所以我試圖讓我的程序輸出一個帶有名稱列表的文本文件。一些名字有怪異的字符,例如Åström。如何讓日食在unicode中打印奇怪的字符?
我已經抓住了名的列表,這些從在「UTF-8」編碼的網頁,或者至少我敢肯定它,因爲頁面源說
「元HTTP的當量=「Content-Type」content =「text/html;字符集= UTF-8" /「
這是我到目前爲止已經試過:
public static void write(List<String> list) throws IOException {
Writer out = new OutputStreamWriter(new FileOutputStream("test.txt"), "UTF-8");
try {
for (int i=0;i<list.size();i++) {
try {
byte[] utf8Bytes = list.get(i).getBytes("UTF-8");
out.write(new String(utf8Bytes, "UTF-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
out.write(System.getProperty("line.separator"));
}
}
finally {
out.close();
}
}
,我,爲什麼它不工作有點困惑。我得到的輸出是「strström」,這很奇怪。
有人可以請指出我在正確的方向嗎?謝謝!
,並在另一個不相關的音符,有沒有寫一個新行到一個文本文件除了笨重
out.write(System.getProperty(「line.separator」))一個簡單的方法;
我有嗎?我在某個地方看到了這個網站,並且它可以工作,但我只是想知道是否有更簡潔的方法。
當你檢查它時,你用什麼來打開文件?程序可能會檢測到錯誤的編碼。 – 2011-06-04 00:12:41
此外,要檢查網頁的編碼,請嘗試查看檢測到的編碼。根據瀏覽器的不同,它可能位於Chrome的「查看」菜單或「扳手菜單 - >編碼」下。 – 2011-06-04 00:17:38
我正在打開記事本中的文件。當我將這個詞複製並粘貼到記事本中時,角色顯示正確,但是當我運行程序時,有趣的東西出現了。 – wynnch 2011-06-04 00:27:03