我在处理非常大的文件(~100g)时使用BufferedReader
和FileReader
。
以下是我使用的代码:
BufferedReader reader = new BufferedReader(new FileReader("file path"));
BufferedWriter writer = new BufferedWriter(new FileWriter("output file"));
String line;
while ((line = reader.readLine()) != null) {
// check if i need this line, and if i need it, i print it
writer.write(line);
writer.newLine();
}
writer.close();
reader.close();
当我在开始时运行我的文件时,它使用的内存很少,但慢慢地使用的内存增长(可以轻松地使用超过50GB的RAM)。
为什么会这样?有没有办法修复它?
-Xmx
参数。也许传递的值设置不正确。 - Tom