BufferedInputStream:字节流的缓冲区输入对象
BufferedOutputStream:字节流的缓冲区输出对象
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class CopyPictureByBuffer {
public static void main(String[] args) throws IOException {
myCopy();
}
public static void myCopy() throws IOException {
FileInputStream fis = new FileInputStream("1.jpg");
BufferedInputStream bufis = new BufferedInputStream(fis);
//字节流的缓冲区对象
FileOutputStream fos = new FileOutputStream("tempfile\\2.jpg");
BufferedOutputStream bufos = new BufferedOutputStream(fos);
byte[] buf = new byte[1024];
int len=0;
while((len=bufis.read(buf))!=-1){//缓冲区的read方法
bufos.write(buf,0,len);//缓冲区的write方法
bufos.flush();//使缓冲的输出字节被写到底层输出流中
//避免电脑断电,死机等特殊情况导致缓冲区中的数据被清空
}
}
}
<