1. 程式人生 > >ASP.NET 解決Cookie亂碼

ASP.NET 解決Cookie亂碼

在Asp.net的HttpCookie中寫入漢字,讀取值為什麼全是亂碼?其實這是因為文字編碼而造成的,漢字是兩個編碼,所以才會搞出這麼個亂碼出來!

其實解決的方法很簡單:只要在寫入Cookie時,先將其用Url編碼,然後再寫入,當我們讀取時再解碼就OK

   例子:
   Cookie的寫入:

HttpCookie cookie=new HttpCookie("Simple");
cookie.Values.Add("Simple1",HttpUtility.UrlEncode("大叔,你好!"));
cookie.Values.Add("Simple2
","English is OK!Nothing we should do!"); Response.AppendCookie(cookie);

 

Cookie的讀取:

HttpCookie cookie=Request.Cookies["Simple"];
string simple1=HttpUtility.UrlDecode(cookie["Simple1"]);
string simple2=cookie["Simple2"];