關於JAVA中URL傳遞中文參數的問題


今天在調用一個接口時,需要傳遞一個中文參數,結果獲取不到數據,原因就在於中文傳參的編碼問題。

問題來源:URL url= new URL("http://XXX?OrganName=司法廳");

現解決辦法如下:

1、對要進行URL傳遞的中文字符進行編碼:

String message = Java.NET.URLEncoder.encode("司法廳","utf-8");

2、在取URL傳遞中文的頁面對字符進行解碼:

String msg = request.getParameter("message");
String str=new String(msg.getBytes("ISO-8859-1"),"UTF-8");

--------------------------------------------------------------------------------------

注:為什么要對取出的字符集形式轉換成UTF-8形式,是因為ISO-8859-1是Java中網絡傳輸使用的標准字符集,request.getParameter("message");得到的還是ISO-8859-1字符集,所以要轉換一下。

 


免責聲明!

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



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