当前位置:编程学习 > C#/ASP.NET >>

\u533a\u53bf这是什么编码C#如何解码这种JS编码

我要读取网页数据,但可恨的是网页输出的是 \u533a\u53bf编码过的汉字,查遍整个互联网都不知道这种常用的编码到底是什么,utf-8,unicode,编码后的形式都不一样,站长工具也解不出来,十年前都知道这种编码常常用在网页中,查了十年资料还是不知道这到底是什么编码,只能通过document.write("\u533a\u53bf") 才能解出来,可是我要在后台程序中处理 要用C# 这才难到人了 --------------------编程问答-------------------- using LitJson;

JsonData _wjson = JsonMapper.ToObject("{\"txt\":\"\\u533a\\u53bf\"}");
Response.Write(_wjson["txt"]);
Response.End(); --------------------编程问答--------------------  \u533a\u53bf是unicode编码啊, 你可以定义一个字节数组,将编码存到数组中,再转为字符串
例子:
//输入
            string str1 = @"\u533a\u53bf";

            byte[] byt = new byte[256];
            int j = 0;

            for (int i = 0; i < str1.Length; i++)
            {

                if (str1.Substring(i, 2) == "\\u")
                {
                    byt[j++] = (byte)Convert.ToInt32("0x" + str1.Substring(i + 4, 2), 16);
                    byt[j++] = (byte)Convert.ToInt32("0x" + str1.Substring(i + 2, 2), 16);
                    i += 5;
                }

            }
            //输出
            MessageBox.Show(Encoding.Unicode.GetString(byt, 0, j)); --------------------编程问答--------------------


string s= HttpUtility.HtmlDecode("\u533a\u53bf");
           Response.Write(s);

--------------------编程问答-------------------- 这个就是unicode编码表中的字符。unicode可以有很多表示方法,可以用十进制或十六进制。
这个就是用16进制表示的。
另外css中的before和after也是这样表示的
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,