有没有一种方法可以搜索和组织 txt 文件,而无需将文档作为字符串或数组列表导入?
我正在寻找可以执行以下操作的代码:
当第 1 列等于“2”时(文档如下所示),将第 2 列中的所有数字相加:
2 45 46 89 45
2 65 34 23 89
3 45 65 22 99
我使用的文件长 20GB,因此制作一个数组列表一次大约需要 45 分钟,然后返回它也需要很长时间。努力让我只需浏览一次文档即可获得我需要的一切。
最佳答案
逐行读取文件,按空格分割,如果满足条件则添加到总数。
BufferedReader reader = new BufferedReader(new FileReader("file.txt"));
String line;
long total = 0;
while ((line = reader.readLine()) != null) {
String[] tokens = line.split(" ");
if (tokens[0].equals("2"))
sum += Long.valueOf(tokens[1]);
}
关于java - 组织 TXT 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17065901/