在读取文件时,部分代码工作正常
//代码A
try{
String s1;
f = new FileReader("C:\\Test.txt");
f1 = new BufferedReader(f);
while((s1 = f1.readLine())!=null)
{
System.out.println(s1);
}
}
但是这个不是:
//代码B
try{
String s1;
f = new FileReader("C:\\Test.txt");
f1 = new BufferedReader(f);
while((f1.readLine())!=null)
{
s1=f1.readLine();
System.out.println(s1);
}
}
我认为代码A和B是相同的;但代码 A 读取了文件的完整内容,而代码 B 则没有。为什么?
最佳答案
在代码 B 中,您在一次迭代中调用 readLine()
两次,因此在一次迭代中读取 2 行,最终仅每隔一行打印一次。即使您没有将 f1.readLine()
分配给任何内容,该行仍会被读取,并且读取器会继续阅读下一行。
关于java - 无法使用以下 Java 代码读取完整文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29216073/