使用BufferedInputStream和BufferedOutputStream可以处理二进制的文件,比如视频,图片等二进制文件。
BufferedInputStream是字节流,在创建BufferedInputStream的时候,会在内存中创建一个缓冲数组。
BufferedInputStream,BufferedOutputStream
如下例子展示了BufferedInputStream读取a.txt文件中的数据复制到a1.txt文件中
import java.io.*;
import java.sql.SQLException;
public class Main {
public static void main(String[] args) throws IOException {
// 创建bufferedInputStream,bufferedOutputStream处理流
BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream("a.txt"));
BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream("a1.txt"));
// 一次读取八个字节
byte[] bytes = new byte[8];
// 读取的实际长度
int len;
// 循环读取
while ((len=bufferedInputStream.read(bytes))!=-1)
{
// 写入bytes中0 ~ len到文件
bufferedOutputStream.write(bytes,0,len);
}
// 一定要记得关闭处理流
bufferedOutputStream.close();
bufferedInputStream.close();
}
}