一、表單提交的亂碼處理
表單提交分為get和post兩種提交方式。兩種方式的亂碼解決又不一樣,用post提交只需要在接受的時候加上request.setcharacterencoding("utf-8");而get方法處理應該將接收過來的值打碎成iso-8859-1編碼的,然後再組裝成utf-8的,new string(request.getparameter(param).getbytes("iso8859-1"),"utf-8");
二、過濾器處理亂碼問題
如果每次接收都像上面那樣去處理的話肯定是太麻煩了,用過濾器來處理請求的亂碼問題很方便,只需要寫乙個過濾器,就可以過濾所有請求頁面的亂碼問題了。至於如何用過濾器處理亂碼請參考《用過濾器來解決jsp中文亂碼問題》。不過值得注意的是,如果使用struts的話,在web.xml裡面處理編碼的過濾器必須在struts過濾器前面註冊,否則所有頁面都不會經過過濾器。
三、ajax請求的亂碼問題
如果使用ajax出現了亂碼問題這樣解決:前端ajax函式的請求的url裡面中文引數用兩個encodeuri()函式處理,var url = "user.do?p=checkuser&name=" + encodeuri(encodeuri(username.value));而伺服器端則用 urldecoder.decode()函式去接收,string username = urldecoder.decode(request.getparameter("name"),"utf-8"); 這樣就能夠解決ajax請求中亂碼的問題了。
四、鏈結請求中亂碼問題(ie6)
使用鏈結請求傳遞中文引數時在ie6裡面會出現亂碼,解決方法如下:使用encodeuri(param)對中文引數處理一下就行了,如location = "users.do?p=login&&username="+encodeuri(username)+"&password="+encodeuri(password);
JAVA WEB開發中處理亂碼彙總
在開發中難免會遇到中文顯示亂碼的問題,亂碼問題是乙個很棘手的問題,常常令程式設計師抓狂。現在把我使用的幾種解決亂碼的方案和大家共享!一 表單提交的亂碼處理 表單提交分為get和post兩種提交方式。兩種方式的亂碼解決又不一樣,用post提交只需要在接受的時候加上request.setcharacte...
javaweb 中文亂碼的處理
首先應該用setcharacterencoding將編碼格式設定為 utf 8 request.setcharacterencoding utf 8 如果使用的是post方式提交,則對於中文來說可以直接通過getparameter 來獲取所傳的值 string username request.ge...
JavaWeb前後臺中文亂碼處理
1.後台傳到前台亂碼 後台這樣寫 string attachname urlencoder.encode attachment.getattachmentname utf 8 前台這樣寫 前台js decodeuricomponent data.attachmentname 2.1.前台轉到後台亂碼...