問題是因爲HttpURLConnection接收數據的時候 字符集默認的是GBK 要轉碼UTF-8 public static String sendPostNew(String url, String param ) { String result = ""; try { URL httpurl = new URL(url); HttpURLConnection httpConn = (HttpURLConnection) httpurl .openConnection(); httpConn.setRequestMethod("POST"); httpConn.setDoOutput(true); httpConn.setDoInput(true); httpConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); PrintWriter out = new PrintWriter(new OutputStreamWriter( httpConn.getOutputStream(), "utf-8")); out.print(param); out.flush(); out.close(); int code=httpConn.getResponseCode(); if (code==200) { //關鍵在這行代碼。設置接收字符集 防止亂碼 BufferedReader in = new BufferedReader(new InputStreamReader( httpConn.getInputStream(),"UTF-8")); String line; while ((line = in.readLine()) != null) { result += line; } in.close(); }else{ result=code+""; } } catch (Exception e) { System.out.println("沒有結果!" + e); } return result; }
使用HttpURLConnection獲取數據部分亂碼
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.