黑马程序员技术交流社区
标题:
java读取文件内容的速度
[打印本页]
作者:
杨杰
时间:
2011-11-17 19:33
标题:
java读取文件内容的速度
那个java编的类似于记事本的东东,功能倒是实现了,但也发现了一个问题。
在打开一个TXT文件后,如果里面的内容较少还行,但如果稍大点。比如,我打开了一本100W+字的小说,光读取就直接卡住了,最后只得用任务管理器关了。
但在Windows里面就没有这种问题啊,自带的记事本打开文件,那速度相对java而言简直太快了。
这个,求解释,求知识普及。
作者:
高庆亮
时间:
2011-11-17 19:54
你是用的IO流么?如果是的话,是不是没加缓存啊?不加缓存要是读取大一点的东西一定会卡的。
byte[] b = new byte[1024];
int len = 0;
String s1 = new String(b,0,len,"GBK");
while((len=is.read(b))!=-1){
System.out.println("客户端发来的消息为:"+new String(b,0,len,"GBK"));
}
这是缓存的例子,我代码中的一部分,你可以分析下。如果还卡的话你可以将1024换成1024*5。加油哦!
作者:
小王同志
时间:
2011-11-17 22:08
你可以看看开源工具JEdit的代码
读取文件肯定还是主要用到io包和nio包的api 你看看它是怎么调用的
按字符读,按字节读,加不加缓存,对于速度影响挺大的。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2