在 Java 中访问文件中的特定行
在 Java 中,从文本文件访问特定行需要专门的技术,特别是当处理大文件。本文探讨了两种根据行号从文件中提取特定行的方法:
小文件:
对于较小的文件,一种简单的方法是加载整个文件将文件内容写入内存并使用 get() 方法以行号作为索引来访问该行。这可以使用 readAllLines() 方法来完成,如下所示:
String line32 = Files.readAllLines(Paths.get("file.txt")).get(32);
大文件:
但是,对于较大的文件,将整个文件读入内存可能会不可行。在这种情况下,逐行流式传输文件并跳到所需的行号会更有效。使用 Java 的 NIO.2 包,可以按如下方式实现:
try (Stream<String> lines = Files.lines(Paths.get("file.txt"))) { line32 = lines.skip(31).findFirst().get(); }
在这种方法中,skip(31) 将流移动到第 32 行,findFirst().get() 检索该行为一个字符串对象。
以上是如何高效访问Java文件中的特定行?的详细内容。更多信息请关注PHP中文网其他相关文章!