参考文档
如何在Java中逐行读取文件
https://cloud.tencent.com/developer/article/1751572
Java 逐行读取文本文件的几种方式以及效率对比
https://www.jianshu.com/p/7a81f603fe1d
建议
在逐行读取文本内容的需求下, 建议使用 Apache Commons IO 流, 或者 BufferedReader, 既不会过多地占用内存, 也保证了优异的处理速度.
try {// create a reader instanceBufferedReader br = new BufferedReader(new FileReader("examplefile.txt"));// read until end of fileString line;while ((line = br.readLine()) != null) {System.out.println(line);}// close the readerbr.close();} catch (IOException ex) {ex.printStackTrace();}
:::info
readLine()方法从文件中读取一行文本,并返回一个包含该行内容的字符串,但不包括任何行终止字符或null。
注意:null值并不表示字符串为空。 而是表明已到达文件末尾。
:::
另外,您可以使用BufferedReader类中的lines()方法返回行流。 您可以轻松地将此流转换为列表或阅读以下内容:
try {// create a reader instanceBufferedReader br = new BufferedReader(new FileReader("examplefile.txt"));// list of linesList<String> list = new ArrayList<>();// convert stream into listlist = br.lines().collect(Collectors.toList());// print all lineslist.forEach(System.out::println);// close the readerbr.close();} catch (IOException ex) {ex.printStackTrace();}
