BufferedReader reader1 = new BufferedReader(new FileReader("1.csv"));
BufferedReader reader2 = new BufferedReader(new InputStreamReader(
new FileInputStream("1.csv"), "utf-8"));
上面两个有什么不同? 为什么reader2的结果是“?????????” 但 reader1 没问题
最佳答案
The constructors of this class assume that the default character encoding [...] are appropriate.
或者换句话说,1.csv
似乎是使用系统默认编码进行编码的,而不是使用UTF-8进行编码,并且以下内容不会输出utf-8
或UTF-8
:
System.out.println(new FileReader("1.csv").getEncoding());
关于java - 如何在java中读取.csv中文文件以及为什么这两者会导致不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51996792/