在http頭的Content-Type欄位可能會包含字元編碼資訊。例如可能返回的頭會包含這樣子的資訊:Content-Type: text/html; charset=UTF-8。這個頭資訊表明該頁的編碼是UTF-8,
設定在http頭的Content-Type的字元編碼:httpClient.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "UTF-8");
對於象xml或者html這樣的檔案,允許作者在頁面中直接指定編碼型別。比如在html中會有<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>這樣的標籤;或者在xml中會有<?xml version="1.0" encoding="gb2312"?>這樣的標籤,在這些情況下,可能與http頭中返回的編碼資訊衝突,需要使用者自己判斷到底那種編碼型別應該是真正的編碼。
可能有效:String ret = new String(postMethod.getResponseBodyAsString().getBytes("UTF-8"));
在http頭的Content-Type欄位可能會包含字元編碼資訊。例如可能返回的頭會包含這樣子的資訊:Content-Type: text/html; charset=UTF-8。這個頭資訊表明該頁的編碼是UTF-8,
設定在http頭的Content-Type的字元編碼:httpClient.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "UTF-8");
對於象xml或者html這樣的檔案,允許作者在頁面中直接指定編碼型別。比如在html中會有<meta http-equiv="Content-Type" content="text/html; charset=gb2312"/>這樣的標籤;或者在xml中會有<?xml version="1.0" encoding="gb2312"?>這樣的標籤,在這些情況下,可能與http頭中返回的編碼資訊衝突,需要使用者自己判斷到底那種編碼型別應該是真正的編碼。
可能有效:String ret = new String(postMethod.getResponseBodyAsString().getBytes("UTF-8"));