关于c#的unicode转换问题
比如“京东商城”我如何把它变成 “\u4eac\u4e1c\u5546\u57ce”的格式啊
我目前用的办法是
byte[] b = System.Text.Encoding.Unicode.GetBytes(s);
string str = "";
for (int i = 0; i < b.Length; i = i + 2)
{
str += "\\u" + string.Format("%{0:X}", b[i + 1]) + string.Format("%{0:X}", b[i]);
}
str = str.Replace("%", "").ToLower();
return str;
但实际输出的是\\u 而不是期望的\u
求高手
[解决办法]
- C# code
class Program { static void Main(string[] args) { string tt = ttemp(); Console.WriteLine(tt); } private static string ttemp() { byte[] b = System.Text.Encoding.Unicode.GetBytes("京东商城"); string str = ""; for (int i = 0; i < b.Length; i = i + 2) { str += "\\u" + string.Format("%{0:X}", b[i + 1]) + string.Format("%{0:X}", b[i]); } str = str.Replace("%", "").ToLower(); //Console.WriteLine(str); return str; } }
[解决办法]
string sh = HttpUtility.UrlEncodeUnicode("京东商城").Replace(@"%u",@"\u");
[解决办法]
输出结果没有问题啊
\u4eac\u4e1c\u5546\u57ce
[解决办法]
[解决办法]
示例代码:
- C# code
var source = "京东商城";var result = source.Aggregate(string.Empty, (current, c) => current + string.Format("{0}{1:x4}", @"\u", (int) c));Console.WriteLine(result);