【发布时间】:2014-06-19 19:14:22
【问题描述】:
我有一个庞大的结果集,比如说 100 万行。我通常使用以下 sn-p 将它们写入文件,而我总是内存不足。有没有什么有效的方法可以消除这个问题?
PrintWriter writer = new PrintWriter(filename, "UTF-8");
iteration -> { writer.println(a single string); }
writer.close();
【问题讨论】:
-
调查缓冲。这样一来,您只会消耗尽可能多的内存。
-
打印后尝试冲洗写入器。
-
不要一次完成整个文件。把它分成块。
-
@MaxMega close() 应该是 flush()。
-
你真的是说整个结果都在一个(!)字符串(a String)中吗?
标签: java postgresql memory-leaks resultset printwriter