将字符串转换为unicode表示

时间:2012-11-08 14:50:20

标签: c# .net string

  

可能重复:
  Converting Unicode strings to escaped ascii string

如何将ä...转换为\u0131...

之类的内容

有没有这样做的功能?

p.s:

除此之外:[对不起@Kendall Frey: - )]

char a = 'ä';
string escape = "\\u" + ((int)a).ToString("X").PadLeft(4, '0');

2 个答案:

答案 0 :(得分:25)

这是一个将char转换为转义序列的函数:

string GetEscapeSequence(char c)
{
    return "\\u" + ((int)c).ToString("X4");
}

它不会比单线更好。

不,据我所知,没有内置功能。<​​/ p>

答案 1 :(得分:7)

没有内置功能AFAIK。这是一个非常愚蠢的解决方案。但肯德尔·弗雷提供了更好的变体。

string GetUnicodeString(string s)
{
    StringBuilder sb = new StringBuilder();
    foreach (char c in s)
    {
        sb.Append("\\u");
        sb.Append(String.Format("{0:x4}", (int)c));
    }
    return sb.ToString();
}