目前我試圖從一個XML文件中提取(也就是通過這個地址訪問:http://mobilite.euroairport.com/services/getDepartureAirports?language=French)機場的列表。 我的問題是,「U」應該出現在「杜塞爾多夫」是不可能的讀取(甚至IE或Firefox直接)。 我得到這樣的: d□杜塞爾多夫或d杜塞爾多夫或d杜塞爾多夫Java的,未知charachtersン□XML響應
以下是我曾經試圖找到該文件的編碼代碼(n是包含「杜塞爾多夫」的字符串)? :
byte[] bytes = n.getBytes();
Log.w("tagtag", (char) bytes[0] + " "+(char) bytes[1]+" "+(char) bytes[2]);
bytes = n.getBytes("ASCII");
Log.w("tagtag", (char) bytes[0] + " "+(char) bytes[1]+" "+(char) bytes[2]);
bytes = n.getBytes("Cp1252");
Log.w("tagtag", (char) bytes[0] + " "+(char) bytes[1]+" "+(char) bytes[2]);
bytes = n.getBytes("UTF-8");
Log.w("tagtag", (char) bytes[0] + " "+(char) bytes[1]+" "+(char) bytes[2]);
bytes = n.getBytes("ISO8859_1");
Log.w("tagtag", (char) bytes[0] + " "+(char) bytes[1]+" "+(char) bytes[2]);
bytes = n.getBytes("ISO8859_2");
這是結果(logcat的Android設備):
10-08 09:41:30.557: W/tagtag(1506): D □ ン
10-08 09:41:30.557: W/tagtag(1506): D ? S
10-08 09:41:30.567: W/tagtag(1506): D ン S
10-08 09:41:30.567: W/tagtag(1506): D □ ン
10-08 09:41:30.577: W/tagtag(1506): D ン S
10-08 09:41:30.637: W/tagtag(1506): D ン S
我的問題是:讓我的嘗試讀取這個字符串,或者是由於問題的錯誤服務器 ?
謝謝
似乎是一個ecoding問題。我相信觀察相關鏈接可能很有用-----> –
在提供的鏈接上,它返回DELL的DSELLDORF?除此之外,我使用wireshark檢查了流量,並且服務器返回「Content-Type:application/xml; charset = UTF-8 \ r \ n」,其中AFAIK表示服務器配置錯誤 – linski
yes返回DSSELDORF。這就是爲什麼我說即使是IE或Firefox也看不懂它的原因。關於你的建議約翰,我不明白你想要我看什麼? – sam