我使用FileWriter保存CSV文件(文本文件)。 当我使用诸如sublime text之类的文本编辑器阅读时,一切似乎都很好。 但是当我用Java读取它时,无论如何我都会得到一些讨厌的字符。
阅读示例:
StringBuilder sb=new StringBuilder();
try {
String ligne;
BufferedReader fichier1 = new BufferedReader(new FileReader(nom_office));
while ((ligne = fichier1.readLine()) != null) {
sb.append(ligne);
}
fichier1.close();
} catch (Exception e) {
e.printStackTrace();
}
//String totalité = new String(encoded, encoding);
String totalité = sb.toString();
以下这些语句的结果是:
System.out.println("##############");
System.out.println(totalité);
PK! T��ep[Content_Types] .xml�(�
TKn�0�W�o�EUU,[$�L/�i''m�kIO}。
...等等。 为什么结果与崇高文字不同?
答案 0 :(得分:0)
BufferedReader
使用默认的系统编码,可能不是UTF-8
,这就是您需要的。尝试这个:
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(file), "UTF-8"));
另外,您的IDE控制台需要配置为使用UTF-8,这真的很重要!