小编Fed*_*uez的帖子

解析一个巨大的纯文本文件

我有一个巨大的文本文件(207 MB,400万行),我需要逐行读取它.
每一行都有这种格式:
20227993821NAME AND SURNAME NINIC NN08
我使用(对于常规文件)Java库FileReader,BufferedReader如下所示:

FileReader dataFile = new FileReader(directory);
data = new BufferedReader(dataFile);
String s;
while((s = data.readLine()) != null){
    //do stuff
}
Run Code Online (Sandbox Code Playgroud)

没有问题,但是使用大文件需要花费太多时间来处理.
我想知道在这种情况下最好的做法是什么(另一个图书馆,不同的方法等),任何事情都会有所帮助.
该文件由政府机构定期发布,必须加载到我的软件中进行数据比较.

编辑:

这段代码:

BufferedReader data = new BufferedReader(new FileReader(file));
String s;
int count = 0;
while ((s = data.readLine()) != null) {
   System.out.println (count + " - " + s);
   count++;
}
data.close();
Run Code Online (Sandbox Code Playgroud)

在19分30秒内执行.我不知道为什么花这么长时间.
我有一个64位操作系统和一个i5处理器.

java file-io parsing plaintext

1
推荐指数
1
解决办法
3046
查看次数

标签 统计

file-io ×1

java ×1

parsing ×1

plaintext ×1