在學習當中碰到cookie中文亂碼問題,問題原因:cookie對中文不太支援,將中文放入cookie中會報錯誤。
解決辦法:
1.編碼
將中文進行編碼再放入cookie中:
string username1 = urlencoder.encode(username, "utf-8");
string userpwd1 = urlencoder.encode(userpwd, "utf-8");
其中username和userpwd其中有中文,username1和userpwd1是進行編碼之後的字串。
比如:(我這裡做的是三天免登陸)
cookie logincookie = new cookie("logincookie",username1+":"+userpwd1);
//將編碼後的內容放到cookie中
logincookie.setmaxage(24*3600);
//設定logincookie的有效期3天 24小時*60分鐘*60秒
resp.addcookie(logincookie);
//將logincookie響應到瀏覽器
2.解碼(如果不進行解碼,頁面會獲取的是base64編碼後的內容)
string unamepwd = urldecoder.decode(cookies[i].getvalue(),"utf-8");
其中cookies[i].getvalue()是要進行解碼的內容,根據自己的情況進行修改。
我的**:
//建立存放使用者名稱密碼的map
maploginmap = new hashmap();
//獲取cookies
cookie cookies = req.getcookies();
//進行判斷
if(cookies!=null) {
for(int i=0;i
這樣問題就解決了。
C 解決cookie中文亂碼
c 中cookie亂碼問題解決辦法 2008年04月25日 15 02 c 寫法 寫cookie acookie.values.add user httputility.urlencode user 寫cookie時進行編碼 讀cookie session pass httputility.urld...
解決cookie中文亂碼問題
下面是寫入cookie的 cookie.value 張三,14,images 1.jpg cookie.expires datetime.now.adddays 1 response.cookies.add cookie 下面是讀取cookie的 if request.cookies usernam...
解決cookie中文亂碼問題
有時讀取出來的cookie值中的中文部分可能是亂碼,不管是有什麼導致的,我們都可以通過編碼進行解決 更改上面寫入cookie的 cookie.value httputility.urlencode 張三,14,images 1.jpg encoding.getencoding utf 8 cooki...