gpt4 book ai didi

java - 打印行,Java 堆空间

转载 作者:搜寻专家 更新时间:2023-10-30 23:00:46 25 4
gpt4 key购买 nike

<分区>

我想打印一个巨大的文本文件(超过 600 000 MB)中的每一行。

但是当我尝试下面的代码时,我在到达行号 1 000 000 之前得到“...OutOfMemoryError:Java 堆空间”。

有没有比 FileReader 和 LineNumberReader 更好的处理输入的方法?

FileReader fReader = new FileReader(new File("C:/huge_file.txt"));
LineNumberReader lnReader = new LineNumberReader(fReader);
String line = "";
while ((line = lnReader.readLine()) != null) {
System.out.println(lnReader.getLineNumber() + ": " + line);
}
fReader.close();
lnReader.close();

提前致谢!


谢谢大家的回答!

我终于找到了内存泄漏,这是一个未使用的 java 类实例,它会在每次行迭代时 self 复制。换句话说,它与文件加载部分无关。

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