通过字节缓冲流提高读写效率
通过字节缓冲流提高读写效率
字节缓冲流,通过内部缓存数组来提高操作效率
FIleInputStream和FileOutputStream都是节点流,它们相当于一个管道,进行一个数据的流通。
而BuffrerdInputStream和BufferedOutpurStream都是处理流,它们相当于管道的保护层/海绵,是节点流缓冲区。

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class FileStreamBuffed3Demo {
public static void main(String[] args) {
FileInputStream fis = null;
FileOutputStream fos = null;
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try {
fis = new FileInputStream("D:\\IOTest\\侠客.jpg");
bis = new BufferedInputStream(fis);
fos = new FileOutputStream("D:\\IOTest\\侠客3.jpg");
bos = new BufferedOutputStream(fos);
// 缓冲区中,byte数组长度默认是8192
int temp = 0;
while ((temp = bis.read())!=-1){
bos.write(temp);
}
bos.flush();
}catch (Exception e){
e.fillInStackTrace();
}finally {
try {
// 关闭流时注意,后进来的先关闭
if (bis != null){
bis.close();
}
if (fis != null){
fis.close();
}
if (bos != null){
bos.close();
}
if (fos != null){
fos.close();
}
}catch(Exception e) {
e.fillInStackTrace();
}
}
}
}

浙公网安备 33010602011771号