利用字节缓冲流读写数据
时间: 2023-08-05 20:10:31 浏览: 48
当我们需要读写二进制数据时,可以使用字节缓冲流(BufferedInputStream 和 BufferedOutputStream)来提高读写效率。
下面是一个将一个文件复制到另一个文件的例子:
```java
import java.io.*;
public class FileCopy {
public static void main(String[] args) {
try {
// 创建一个字节缓冲输入流
BufferedInputStream bis = new BufferedInputStream(new FileInputStream("source.txt"));
// 创建一个字节缓冲输出流
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("target.txt"));
byte[] buffer = new byte[1024];
int len;
// 读取数据到缓冲区,并写入到输出流中
while ((len = bis.read(buffer)) != -1) {
bos.write(buffer, 0, len);
}
// 关闭流
bis.close();
bos.close();
System.out.println("文件复制成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在这个例子中,我们首先创建了一个字节缓冲输入流和一个字节缓冲输出流,然后使用一个缓冲区来读取数据并写入到输出流中,最后关闭流。这样可以大大提高读写效率。