如何使用Unicode转换特殊字符?

3
如何将带有特殊字符的字符串进行转换,例如:
małoletni => ma\u0142oletni
其中 ł 被转换为 \u0142(其他特殊字符也一样)。
我尝试过使用以下代码: System.Text.UnicodeEncoding encoding = new System.Text.UnicodeEncoding(); 但结果很奇怪。
请问该如何进行转换?

1
现在Unicode中没有“特殊”字符了,这就是为什么它如此美妙的原因:D - MSalters
1个回答

0
var str = "małoletni\nPi(π)";

//ESCAPE
var escaped = String.Join("", str.Select(c => c>31 && c < 128 ? c.ToString() : "\\u" + ((int)c).ToString("x4")));

//UNESCAPE
var unescaped = Regex.Unescape(escaped)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接