完美解決Get和Post請求中文亂碼的問題
對于Post請求,只需在Servlet或者jsp中寫入如下代碼就可以把解決從表單中傳入的中文亂碼問題
request.setCharacterEncoding("utf-8");
而對于Get請求,因為請求參數(shù)會被附加到地址欄的URL之后,所以不能用上面的處理方法。應(yīng)該這樣:
String str=request.getQueryString(); //使用URLDecoder解碼字符串 String str1=java.net.URLDecoder.decode(str,"utf-8"); String[] paraStrings=str1.split("&"); //paraStrings[0]就是第一個參數(shù),依次類推... for(String paraString : paraStrings) { String[] nameValue=paraString.split("="); //nameValue[0]就是表單的name,nameValue[1]就是表單name對應(yīng)的值 }
還有一種方法就是獲取請求參數(shù)之后對請求參數(shù)值重新編碼,也就是先將其轉(zhuǎn)換成字節(jié)數(shù)組,再將字節(jié)數(shù)組重新解碼成字符串。
String str=request.getParameter("name"); byte[] bytes=str.getBytes("ISO-8859-1"); String name=new String(bytes,"utf-8");
以上這篇完美解決Get和Post請求中文亂碼的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
springboot單文件下載和多文件壓縮zip下載的實現(xiàn)
這篇文章主要介紹了springboot單文件下載和多文件壓縮zip下載的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11