您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)java中常見(jiàn)的亂碼處理方法,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
解決方式1(若亂碼參數(shù)多,就比較低效)
瀏覽器默認(rèn)編碼為ISO-8859-1,后端Servlet接收請(qǐng)求參數(shù),按照ISO-8859-1進(jìn)行解碼,得到二進(jìn)制流,然后再用UTF-8編碼。
示例代碼:
// 獲得請(qǐng)求參數(shù) String queryString = request.getQueryString(); // 按照ISO-8859-1方式解碼 byte[] bytes = queryString.getBytes("ISO-8859-1"); // 按照UTF-8編碼 String param = new String(bytes,"UTF-8");
解決方式2(此種方式只支持get方式請(qǐng)求)
修改服務(wù)器(tomcat)配置:在server.xml中,默認(rèn)為ISO-8859-1(沒(méi)有顯示出來(lái)),我們可以添加上UTF-8
解決方式3(此種方式只支持post方式請(qǐng)求)
在servlet直接設(shè)置請(qǐng)求參數(shù)編碼--推薦
//設(shè)置請(qǐng)求參數(shù)編碼 request.setCharacterEncoding("UTF-8");
如果post和get同時(shí)出現(xiàn)亂碼,結(jié)合方式2和方式三使用
響應(yīng)亂碼--響應(yīng)
// 設(shè)置MIME類(lèi)型 response.setContentType("text/html"); // 設(shè)置編碼 response.setCharacterEncoding("UTF-8"); //設(shè)置編碼(簡(jiǎn)寫(xiě)) response.setContentType("text/html;charset=utf-8");
以上就是java中常見(jiàn)的亂碼處理方法的詳細(xì)內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊,感謝各位的閱讀。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。