一尘不染

如何有效获取文件中的行数?

java

我的档案很大。它包括大约3.000-20.000行。如何使用Java获取文件中的行总数?


阅读 250

收藏
2020-09-09

共1个答案

一尘不染

BufferedReader reader = new BufferedReader(new FileReader(“file.txt”));
int lines = 0;
while (reader.readLine() != null) lines++;
reader.close();

更新:
为了回答此处提出的性能问题,我进行了评估。第一件事:20.000行太少了,无法使程序运行明显的时间。我创建了一个包含500万行的文本文件。此解决方案(从不带-server或-XX-options等参数的Java开始)需要在我的盒子上放置11秒钟左右。与wc-l(用于计数行的UNIX命令行工具)相同,为11秒。读取每个字符并查找’\ n’的解决方案需要104秒,是9-10倍。

2020-09-09