asp.net Cookie值中文乱码问题解决方法
发布时间:2016-12-29 来源:查字典编辑
摘要:cookie里面不能写中文,是由于cookie先天的编码方式造成的。所以需要有一种中间编码来过渡。URLEncode是最好的选择。我们以as...
cookie里面不能写中文,是由于cookie先天的编码方式造成的。所以需要有一种中间编码来过渡。 URLEncode是最好的选择。
我们以asp.net为例,代码如下:
设置Cookie时:
复制代码 代码如下:
HttpCookie cookie = new HttpCookie("name", System.Web.HttpContext.Current.Server.UrlEncode("查字典教程网"));
Response.Cookies.Add(cookie);读取Cookie时:
if (Request.Cookies["name"] != null)
{
Response.Write(System.Web.HttpContext.Current.Server.UrlDecode(Request.Cookies["name"].Value));
}
注意:编码和解码要一致
复制代码 代码如下:
System.Web.HttpContext.Current.Server.UrlDecode 和 System.Web.HttpContext.Current.Server.UrlEncode
System.Web.HttpUtility.UrlDecode 和 System.Web.HttpUtility.UrlEncode