繁体   English   中英

如何从Java中的X行读取文本文件?

[英]How to read a text file from X line in Java?

如何读取从 X 数行开始的文本文件? 我可以开始读取文件并且在到达 X 行之前什么都不做,但我想知道是否有更好的方法来做到这一点。

一般来说,除非您有预先构建的行长度索引或文件中的行长度已知是固定的,否则您不能这样做。 您可以在读取随机访问文件时跳过给定数量的字节,但为了跳过给定数量的行,您应该计算换行符(如\\n )。 文件系统不会在任何地方存储换行位置。

您正在寻找的是RandomAccessFile 您可以像下面的示例一样使用它。 但是你需要知道你想要阅读的位置。 我相信你可以稍微玩一下它并找到如何使用它。

private static byte[] readFromFile(String filePath, int position, int size) throws IOException {
    RandomAccessFile file = new RandomAccessFile(filePath, "r");
    file.seek(position);
    byte[] bytes = new byte[size];
    file.read(bytes);
    file.close();
    return bytes;
}

更多信息: http : //www.tutorialspoint.com/java/io/java_io_randomaccessfile.htm

http://examples.javacodegeeks.com/core-java/io/randomaccessfile/java-randomaccessfile-example/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM