读书人

关于c#的unicode转换有关问题

发布时间: 2012-03-16 16:34:56 作者: rapoo

关于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
[解决办法]
探讨

引用:
用一下我写的

不行,也是\\U
我其实是在输出一个unicode的json格式字符串

现在客户端收到的是
{"errno":"0","data":{"resource_detail":{"id":"129","name":"\\u4eac\\u4e1c\\u5546\\u57ce","res_type":"1"}}}

而期……

[解决办法]
示例代码:
C# code
var source = "京东商城";var result = source.Aggregate(string.Empty,                                                 (current, c) => current + string.Format("{0}{1:x4}", @"\u", (int) c));Console.WriteLine(result); 

读书人网 >C#

热点推荐