当前位置:  开发笔记 > 编程语言 > 正文

打印行,Java堆空间

如何解决《打印行,Java堆空间》经验,为你挑选了0个好方法。

我想从一个巨大的文本文件(超过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类实例,它为每次迭代重复了一次.换句话说,它与文件加载部分无关.

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有