我對HTTP REST響應中的丹麥字母進行編碼時遇到了問題。丹麥語字母的編碼/內容類型問題「æ」
當我調用REST服務時,我得到的是「bev ge」,它必須是「bevæge」,Chrome瀏覽器對它進行編碼,並給我預期的字母爲「bevæge」,但是當我從Java API我收到「bevge」,sombody可以幫我解決這個問題,將不勝感激,
在此先感謝
我對HTTP REST響應中的丹麥字母進行編碼時遇到了問題。丹麥語字母的編碼/內容類型問題「æ」
當我調用REST服務時,我得到的是「bev ge」,它必須是「bevæge」,Chrome瀏覽器對它進行編碼,並給我預期的字母爲「bevæge」,但是當我從Java API我收到「bevge」,sombody可以幫我解決這個問題,將不勝感激,
在此先感謝
你似乎有一個不匹配您的編碼
考慮
String str = "bevæge";
byte[] b = str.getBytes();
try {
System.out.println(new String (b, "US-ASCII"));
System.out.println(new String (b, "UTF8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
輸出將
bev��ge
bevæge
的樣子,如果字符串轉移爲ISO8859-1
試試下面::
String str = "bevæge";
byte[] b = str.getBytes();
try {
System.out.println(new String (b, "ISO8859-1"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
預訂購輸出中
bevæge
在你的HttpClient中,嘗試添加下面的h eader: Accept-charset:UTF-8
如果你沒有在代碼中加入這個問題,就很難看出你的代碼有什麼問題。 –