首页 新闻 搜索 专区 学院

cookie写入汉字输出是乱码

0
悬赏园豆:10 [已关闭问题]

以前写cookie都是英文,结果今天由于一个系统要求把cookie里的值弄成了汉字,结果全是乱码了,请问有没有什么办法可以恢复

RoseNix的主页 RoseNix | 初学一级 | 园豆:5
提问于:2008-12-02 17:56
< >
分享
其他回答(2)
0

找到了这篇文章:http://www.code52.net/web/ASP/asp2008092324.html

在存之前和取出前后进行编码和解码.

Astar | 园豆:40805 (高人七级) | 2008-12-02 18:34
0

        在存之前和取出前后进行编码和解码

           string str = "中文内容";
            byte[] utf8Buf = Encoding.UTF8.GetBytes(str);
            byte[] gbkBuf = Encoding.Convert(Encoding.UTF8, Encoding.GetEncoding("GBK"), utf8Buf);
            string str1 = Encoding.GetEncoding("GBK").GetString(gbkBuf);

ASP.NET(C#):使用HttpUtility.UrlDecode解决cookies的中文乱码

保存cookie:

//写入cookie

cookie.Values.Add("Userid", HttpUtility.UrlDecodeTextBox1.Text)); Response.AppendCookie(cookie);

// 读取cookie:

 TextBox2.Text = HttpUtility.UrlDecode(Request.Cookies["Info"].Values["Userid"]);

水长 | 园豆:150 (初学一级) | 2008-12-02 19:03
0

用escape和unescape进行编码和解码就可以了

写cookie时escape一下,取的时候unescape一下

丁学 | 园豆:18530 (专家六级) | 2008-12-02 21:48
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册