国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C# .net中cookie值為中文時的亂碼解決方法

2019-11-08 20:08:03
字體:
來源:轉載
供稿:網友

C# .net中cookie值為中文時的亂碼解決方法

一.cookie的名稱或子cookie的名稱不能為中文,否則無法獲得cookie

這個好辦,名稱不用中文即可

二.cookie的值為中文時候,取cookie的值會出現亂碼

解決辦法:存取cookie時候先解碼和編碼

存cookie,進行編碼:

cookie.Value = HttpUtility.UrlEncode("上海");

取cookie時候,進行解碼:cookieValue = HttpUtility.UrlDecode(cookie.Value);

另外注意:

取子cookie時候,應該先解碼,再根據%號分解,才能取到子cookie的值.

寫Cookie里,一定要加上UrlEncode,用Request讀Cookie時,一定要加上UrlDecode

示例如下:PRotected void Page_Load(object sender, EventArgs e)     {         HttpCookie GoodList = null;

         //如果GoodList不為空,則GOODID+1,GoodsName加"樂無煙"         if (Request.Cookies["GoodList"] != null)         {             GoodList = Request.Cookies["GoodList"];             GoodList.Values["GoodsID"] = Server.UrlEncode(Server.UrlDecode(Request.Cookies["GoodList"]["GoodsID"]) + ",1");             GoodList.Values["GoodsName"] = Server.UrlEncode(Server.UrlDecode(Request.Cookies["GoodList"]["GoodsName"]) + ",樂無煙");             GoodList.Expires = DateTime.Now.AddDays(1);             Response.Cookies.Add(GoodList);         }         else         {             //初次寫入Cookie             GoodList = new HttpCookie("GoodList");             GoodList.Values["GoodsID"] = Server.UrlEncode("2");             GoodList.Values["GoodsName"] = Server.UrlEncode("無煙鍋");             GoodList.Expires = DateTime.Now.AddDays(1);             Response.Cookies.Add(GoodList);         }

         Response.Write(Server.UrlDecode(Request.Cookies["GoodList"]["GoodsID"]) + "<br/>");         Response.Write(Server.UrlDecode(Request.Cookies["GoodList"]["GoodsName"]) + "<hr/>");}

中文cookie的問題,在Windows 2000正常,在Windows 2003 sp1下會偶爾出現亂碼(遇到雙字節特殊字符時候,例子:「`蹆絀 ),在windows 2003 SP2下基本亂碼

解決辦法:采用Server.UrlEncode(); Server.UrlDecode();Cookie["MyCookie"] = Server.UrlEncode("中文")Response.Write(Server.UrlDecode(Request.Cookies("MyCookie").Value()))編碼和解碼。

另外編碼和解碼要一致 System.Web.HttpUtility.UrlDecode 和 System.Web.HttpUtility.UrlEncodeSystem.Web.HttpContext.Current.Server.UrlDecode 和 System.Web.HttpContext.Current.Server.UrlEncode

本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/zhdd1234/archive/2009/05/03/4145147.aspx


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 保康县| 鄢陵县| 宜兴市| 克拉玛依市| 安龙县| 邢台市| 金山区| 崇文区| 杭锦旗| 资源县| 金门县| 威宁| 兴安县| 皮山县| 临颍县| 周口市| 靖边县| 安塞县| 临漳县| 河西区| 唐山市| 通渭县| 怀安县| 锡林浩特市| 天等县| 郑州市| 镇江市| 景宁| 宜宾市| 安徽省| 尼玛县| 寻乌县| 乡城县| 石家庄市| 通海县| 德令哈市| 秦皇岛市| 青河县| 册亨县| 岗巴县| 锦屏县|