request.getParameter()獲取URL中文參數亂碼的解決辦法


這個問題耽誤好長時間,URL傳中文參數出現亂碼,就算首次使用request接收就添加 request.setCharacterEncoding("UTf-8"); 依然報錯不誤。

百度以下解決辦法,分享大家:

原因:Http請求傳輸時將url以ISO-8859-1編碼,服務器收到字節流后默認會以ISO-8859-1編碼來解碼成字符流(造成中文亂碼)

解決辦法:我們需要把request.getParameter(“參數名”)獲取到的字符串先用ISO-8859-1編碼成字節流,然后再將其用utf-8解碼成字符流

String str = new String(request.getParameter("參數名").getBytes("iso-8859-1"), "utf-8");  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM