逐行读取大文件(文件包含1.000.000行)并解析Java中的某些行的最快方法是什么?例如,这是我文件的一部分

INFO  00:02:12 - returning228885634
INFO  00:02:12 - Step is 1 for 228885634 statusOK duration 0.018
INFO  00:02:12 - Step is 2 for 228885634 statusOK duration 1.55
INFO  00:02:13 - START executing FOR  test32967 at Mon Sep 23 00:02:13 GMT+00:00 2013
INFO  00:02:13 - Currently working 7

而且我只想从该片段中解析测试的ID(32967)!

最佳答案

您可以这样尝试:-

try (SeekableByteChannel bytechanel= Files.newByteChannel(Paths.get("abc.txt"))) {
    ByteBuffer byte1 = ByteBuffer.allocateDirect(1000);
    for(;;) {
        StringBuilder s = new StringBuilder();
        int n = bytechanel.read(byte1);
        // some code
    }
}

同时寻找 java.nio.* 软件包

10-07 19:19
查看更多