我正在使用 a从 JavaBufferedReader
读取.txt
文件,但它的行为很奇怪。有些文件可以正常读取,有些文件返回几行空行和 null 或跳过前几行文本并打印休息。我检查了路径、编码、属性,我试图读取的那些文件中的所有内容都相同,但代码读取一个文件而其他文件则不会。
System.out.println("\r\nChose desired shelf:");
String shelf = br.readLine();
FileReader fr = new FileReader("D:\\admir\\MyBookLibrary\\"+shelf+"\\Info.txt");
BufferedReader info = new BufferedReader(fr);
while(info.readLine() != null) {
System.out.println(info.readLine());
}
fr.close();
info.close();
由于您的代码有info.readLine()
两次,它将跳过为所有文件打印备用行。对于正确打印的文件,\n
每行文本后可能有一个空行或换行符,巧合的是,它被跳过了。在其他文件中,它也必须跳过备用行。你能检查一下文件的实际内容吗?
我稍微修改了您的代码,现在可以使用了:
System.out.println("\r\nChose desired shelf:");
String shelf = br.readLine();
FileReader fr = new
FileReader("D:\\admir\\MyBookLibrary\\"+shelf+"\\Info.txt");
BufferedReader info = new BufferedReader(fr);
String line;
while((line = info.readLine()) != null) {
System.out.println(line);
}
fr.close();
info.close();
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句