Java中如何高效的读取大文件

Java中如何高效的读取大文件,第1张

读取文件行的标准方式是在内存中读取,Guava 和Apache Commons IO都提供了如下所示快速读取文件行的方法:

Files.readLines(new File(path), Charsets.UTF_8)FileUtils.readLines(new File(path))

这种方法带来的问题是文件的所有行都被存放在内存中,当文件足够大时很快就会导致程序抛出OutOfMemoryError 异常。

用 bufferedReader 试试吧,或者自己定义个byte数组去读文件流 ,其实主要耗时并不是读取上,而是系统IO或者说是硬盘的io时间消耗上

而且像这种 结构很规则的,四行一个小块,完全可以 一次读取四行来 *** 作,效率会高些


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11890439.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存