BufferedInputStream缓冲区的作用

缓冲的意思就是说你调用read()时,可能读取一个字节,但JAVA程序本身和文件的交互则不是这样的,在你读第一个字节的时候,JAVA程序其实从文件中已经读取了一定数量的字节(默认好像是8K),所以你在读第二个字节的时候,实际上已经不用再通过I/O从文件中读了;
通过减少与文件的I/O操作(如果文件全部加载到内存中,则需要与其它操作系统进程交互,如果没有,则需通过操作系统与磁盘交互),从而提高了读取效率;


如果你用过缓冲的write()时就会有体会,比如你用buffer,当你写了一百个字节时,程序突然崩溃,这时你去文件中查看,可能只有几个字节;
但如果不用buffer的话,即使突然崩溃,你写了多少,文件中就有多少;


当然,buffer也有一个flush的方法,就是手动强制将buffer的内容立即写入文件;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值