参考:
有一个1G大小的一个文件,内存限制大小是10M,有序返回频数最高的50个词,该怎么做?
网上有很多该问题的解决方案,都是用分而治之的思想,提到了遍历整个文件。
那么我的问题是:如果单纯地逐行读取大文件,算是把1G文件全都加载进内存吗?或者说是读取大于内存的文件应该怎么读?
6 回答
月关宝盒
TA贡献1772条经验 获得超5个赞
try (BufferedReader in = new BufferedReader(new FileReader(file))) {
String line;
while ((line = in.readLine()) != null) {
// parse line
}
}
file再大,只要每一行的长度有限,整个文件读完会需要不少的时间,但不会占用太大的内存。
添加回答
举报
0/150
提交
取消