将字符串转换为C#Unicode字符文字序列

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将字符串转换为C#Unicode字符文字序列相关的知识,希望对你有一定的参考价值。

我正在寻找一种方法将字符串转换为C#中的Unicode字符文字序列。

例:

输入:嗨!

输出: u0048 u0069 u0021

答案

如果您的意思是希望输出为字符串,则可以遍历所有字符获取其Unicode十六进制值:

const string value = "Hi!";

var chars = value
    .Select(c => (int) c)
    .Select(c => $@"u{c:x4}");

var result = string.Concat(chars);

有关工作演示,请参阅this fiddle

另一答案

这是使用StringBuilder实现的相同方法。

StringBuilder sb = new StringBuilder();
foreach (char c in s)
    sb.AppendFormat("\u{0:X4}",(uint)c);
return sb.ToString();

以上是关于将字符串转换为C#Unicode字符文字序列的主要内容,如果未能解决你的问题,请参考以下文章

c#macintosh编码转utf8

你能避免 Gson 将“<”和“>”转换为 unicode 转义序列吗?

将 Python 转义的 unicode 序列转换为 UTF-8

使用C#以二进制序列化字符串,并使用C ++对其进行反序列化

如何将4字节utf-8的emoji表情转换为unicode字符编码

使用 VB Script RegExp 对象将 '\uA90F' 形式的 JSON Unicode 转义序列转换为 XML 字符引用