【发布时间】:2017-08-23 21:02:24
【问题描述】:
我有几行代码可以用 Java 读取文件的内容。基本上我使用的是FileReader 和BufferedReader。我正在正确阅读这些行,但是,第一行的第一个字符似乎是一个未定义的符号。因为输入文件的内容是正确的,所以我不知道我从哪里得到这个符号。
代码如下:
FileReader readFile = new FileReader(chosenFile);
BufferedReader input = new BufferedReader(readFile);
while((line = input.readLine()) != null) {
System.out.println(line);
}
【问题讨论】:
-
如果您使用 Windows 记事本保存文件,您的数据是 ANSI 编码的,但 FileReader 将使用您的平台默认值,这可能与文件编码不同。强制编码使用
Instead of FileReader you need to use new InputStreamReader(new FileInputStream(pathToFile), <encoding>) -
这个实例的正确编码是什么?
标签: java string file bufferedreader filereader