JAVA无法识别第一行中第一个字符的字符

时间:2017-03-30 05:36:03

标签: java string file bufferedreader filereader

我有一行代码来读取Java中的文件内容。基本上我使用FileReaderBufferedReader。我正确地读取了这些行,但是,第一行的第一个字符似乎是一个未定义的符号。我不知道我在哪里得到这个符号,因为输入文件的内容是正确的。

以下是代码:

FileReader readFile = new FileReader(chosenFile);
BufferedReader input = new BufferedReader(readFile);
while((line = input.readLine()) != null) {
    System.out.println(line); 
}

Console Output

File Content

1 个答案:

答案 0 :(得分:3)

如果仅在第一行中出现,则可能是BOM (Byte Order Mark)。所有现代文本编辑器都能识别这一点,并且不会将其作为文本文件的一部分呈现。保存文本文件时,应该有选项可以保存或不保存。

如果您希望阅读java中的BOM标记,请参阅此处Reading UTF-8 - BOM marker