我正在尝试在 java 中使用文件阅读器和缓冲阅读器从 txt 文件中打印一定数量的行。该文件有超过 100000 行,但我只想打印前 100 行。
我想出的代码是这样的:
public class main {
public static void main(String args[]) throws Exception {
FileReader fr = new FileReader("words.txt");
BufferedReader br = new BufferedReader(fr);
String s;
int count = 0;
while (count <101)
{
while((s = br.readLine()) != null)
{
System.out.println(s);
count++;
System.out.println(count);
}
}
fr.close();
}
}
它打印出这样的东西:
it
1
was
2
a
3
sunny
4
day
...
等等(正在打印的整数只是为了让我可以看到计数器在递增)。问题是,它一直走到文件末尾,而不是在第 100 行文本后停止。我的问题是,如何在第 100 行后停止打印?
提前致谢。
最佳答案
你需要结合你的while条件
while (count < 100 && (s = br.readLine()) != null) { ...
(编辑:正如 johnbk 提到的那样,计数检查应该是 < 100
)
关于Java filereader bufferedreader打印出一定数量的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3936304/