gpt4 book ai didi

java代码从大文件中提取文本部分,仅使用最小RAM

转载 作者:行者123 更新时间:2023-12-02 07:20:42 26 4
gpt4 key购买 nike

我有巨大的文本文件 - 每个文件有 10 GB 大。

现在,我有 2 个字符串 "StringNumber1""StringNumber2"

“Stringnumber1”在每个文本文件中只出现一次,并且 “StringNumber2” 始终位于 “StringNumber1” 之后(尽管 可能出现超过 1 次) >文本文件中的“StringNumber2”)。

我想提取每个文件中出现的所有文本,从匹配“StringNumber1”开始,一直到紧随匹配“StringNumber1”之后出现的“StringNumber2”( "StringNumber1""StringNumber2" 之间的内容可能是几个字节到许多 GB)...

如何使用最少的 RAM 提取此类内容?我想用 Java 来做这个。

最佳答案

仅使用 BufferedReader 还不够好吗?嗯,我从来没有遇到过读取大文件的问题。使用此方法时您是否遇到某种错误?

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class Read {

/**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new FileReader("someFile"));
try {
String line = br.readLine();
while (line != null) {
if(line.contains("String 1")) {
// ...
} else if (line.contains("String 2")) {
// ...
}
line = br.readLine();
}
} finally {
br.close();
}
}
}

关于java代码从大文件中提取文本部分,仅使用最小RAM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14292448/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com