Asp.netのHttpCookieに漢字を書き込むと読み込むと文字化けしてしまう問題を解決!
著者:Eve Cole
更新時間:2009-07-01 15:54:00
今日、学生の姉妹が私に質問しました。Asp.net の HttpCookie に漢字を書き込むと、読み取られた値がすべて文字化けするのはなぜですか?実は、この文字化けは、中国語の文字には 2 つのエンコーディングがあることが原因です。実際、解決策は非常に簡単です。Cookie を書き込むときに、まず URL でエンコードしてから書き込み、それを読み取るときにデコードするだけです。もっと多くの学生姉妹が解決できることを願っています (笑)。
例:
クッキーの書き込み:
1HttpCookie cookie=new HttpCookie("シンプル");
2cookie.Values.Add("Simple1",HttpUtility.UrlEncode("こんにちは、おじさん!"));
3cookie.Values.Add("Simple2","英語はOK!何もする必要はありません!");
4Response.AppendCookie(cookie) の読み取り:
1HttpCookie cookie=Request.Cookies["シンプル"];
2string simple1=HttpUtility.UrlDecode(cookie["Simple1"]);
3string simple2=cookie["Simple2"]; このように simple1="こんにちは、おじさん!"; simple2="英語は大丈夫です!何もする必要はありません!";
とても簡単です! ! !
http://www.cnblogs.com/xdotnet/archive/2006/09/27/get_right_cookie_value.html