我有一個非常惱人的編碼問題,使用opencsv。 當我導出csv文件時,我將字符類型設置爲'UTF-8'。opencsv CSVWriter使用UTF-8似乎不適用於多種語言
CSVWriter writer = new CSVWriter(new OutputStreamWriter("D:/test.csv", "UTF-8"));
但是當我打開與Microsoft Office Excel 2007中的CSV文件,事實證明,它有'UTF-8 BOM'編碼?
將文件保存在記事本中並重新打開後,文件將變回UTF-8,並且其中的所有字母都顯示正常。 我想我已經足夠搜索了,但我還沒有找到任何解決方案來阻止我的文件變成'UTF-8 BOM'。有什麼想法嗎?
Java本身不應該添加BOM,因爲沒有'OutputStreamWriter'構造函數需要兩個字符串我想你的代碼中缺少一些東西。 BOM是否可以成爲你寫的數據的一部分? – 2012-04-13 08:44:32