类型:转载 责任编辑:asp 日期:2007/03/01
我通常使用randomaccessfile读取文本文件,但遇到大文件的时候便觉得效率低,
用什么方法读取文本效率高?
另外,我想能够直接读到文件中的某一行,怎么实现最合理?
请执教!
推荐阅读
建议你看java的demo中的notepad.jar,他的方法就很好,用一个线程,这样在打开大文件的时候不会阻碍别的操作,另外他以char数组来保存读入的数据,然后你可以根据系统来设置这个数组的合适大小,我设置得是4096,然后就是循环加入数据到一个string中,也就是没次从文件中读入4096个字节,然后存储,然后再读下4096个字节,直到读完为止,这样就会很快的了,不会有阻塞)
加缓冲读取,速度会快很多
使用文件通道,代码见:
http://expert.csdn.net/expert/topic/1699/1699482.xml?temp=.8205683
里面我的回复