IO流

本文通过实验对比了DataInputStream、BufferedInputStream及InputStream三种流在复制文件时的性能表现,并分析了各自的特点。结果显示,BufferedInputStream由于采用了缓冲机制,在文件复制速度上明显优于其他两种流。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[size=x-large][b]DataInputStream 、BfferedInputStream、InputStream的比较[/b][/size]


[img]http://dl.iteye.com/upload/attachment/0084/3818/2528b08d-13f3-3bb3-8296-9fafb0f33f86.jpeg[/img]


[img]http://dl.iteye.com/upload/attachment/0084/3820/eb464d8c-bb3b-3851-999e-e1541ef07104.jpeg[/img]


[img]http://dl.iteye.com/upload/attachment/0084/3822/88a371c5-d762-3800-99ee-dddf85f51c30.jpeg[/img]


[b]心得:[/b]

过测试发现DataInputStream 、 BfferedInputStream 、 InputStream三种方法在复制一个470KB的文本文件时,所消耗的时间分别为:
使用数据流复制文件耗费时间:6734ms
使用缓冲数据流复制文件耗费时间:1375ms
使用字节数据流复制文件耗费时间:6469ms
可见缓冲数据流的读取写入的速度是最快的!通过分析和考证明白了三种流的特征,DataInputStream & InputStream使用read方法时每次只读取一个字节,因为这两种方法所使用的时间差不多,但是如果DataInputStream 使用readInt方法时,DataInputStream 的速度就会比InputStream更快了,前提是所访问的文本是符合4字节的整数倍,那么写入文件也writeInt方法相匹配。而BfferedInputStream 每次读取的数据先放入缓冲区,到了一定的大小时,再一次写入文件,从而提升了文件的读写速度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值