Java缓冲字节流复制文件的代码

对于机械硬盘来说,复制文件时,如果每次复制的数据比较小(比如几个字节),而量又特别大就会是个非常蛋疼的事情,效率非常非常的低,如果能够使用缓存一次性复制较大的数据(8~10K),那么就可以大大提高效率了。

而Java提供了带缓存的读写字节流BufferedInputstream和BufferedOutputsteam,那么通过这两个流复制文件可以提高文件复制的效率,因为通过缓存的方式可以一次性读取更多的字节数,然后再一次性写入更多的字节数,这样可以大大的降低硬盘的IO压力,从而提高复制效率。

Java中BufferedInputstream和BufferedOutputsteam默认的缓冲buff是8K,当然,我们也可以自定义buff,而经过测试(不严谨),发现自定义一个8K的buff比Java使用默认的8K的buff速度要快…而自定义buff的代码也不多,所以建议优先使用自定义buff的代码,那么代码如下: 继续阅读