【发布时间】:2013-06-28 14:45:49
【问题描述】:
如果我编写这段代码,我会得到它作为输出 --> 首先: 然后是其他行
try {
BufferedReader br = new BufferedReader(new FileReader(
"myFile.txt"));
String line;
while (line = br.readLine() != null) {
System.out.println(line);
}
br.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
如何避免?
【问题讨论】:
-
我猜是因为编码。
-
我这样解决了: BufferedReader br = new BufferedReader(new InputStreamReader( new FileInputStream("dictionary.txt"),"UTF8")); if (line.startsWith("\uFEFF")) { line = line.substring(1); }
-
不过,这会从每一行的开头去除 \uFEFF。我认为您只想删除文件开头的那个。
标签: java unicode character-encoding filereader