今天有個***妹問我:在Asp.net的HttpCookie中寫入漢字,讀取值為 什麼全是亂碼?其實這是因為文字編碼而造成的,漢字是兩個編碼,是以才會搞出這麼個亂碼出來!其實解決的方法很簡單:隻要在寫入Cookie時,先将其用 Url編碼,然後再寫入,當我們讀取時再解碼就OK了,希望更多的***妹能解決它,呵呵!
例子:
Cookie的寫入:
1
HttpCookie cookie=new HttpCookie("Simple");
2
cookie.Values.Add("Simple1",HttpUtility.UrlEncode("大叔,你好!"));
3
cookie.Values.Add("Simple2","English is OK!Nothing we should do!");
4
Response.AppendCookie(cookie);
Cookie的讀取:
HttpCookie cookie=Request.Cookies["Simple"];
string simple1=HttpUtility.UrlDecode(cookie["Simple1"]);
string simple2=cookie["Simple2"];
這樣simple1="大叔,你好!";simple2="English is OK!Nothing we should do!";
很簡單吧!!!