字节缓冲流的使用
package com.io.buffered;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.junit.Test;
// 字节缓冲流的使用
public class BufferedInputStreamAndOutputStreamTest {
@Test
public void test02() throws IOException {
BufferedInputStream bis = new BufferedInputStream(
new FileInputStream(new File("e:\\CodeCharts.pdf")));
BufferedOutputStream bos = new BufferedOutputStream(
new FileOutputStream(new File("e:\\CodeCharts_d.pdf")));
byte[] b = new byte[1024];
int len;
while((len = bis.read(b)) != -1) {
bos.write(b, 0, len);
}
bos.close();
bis.close();
}
@Test
public void test01() throws IOException {
// 1. 把要读取的文件封装到File对象中
File src = new File("e:\\CodeCharts.pdf");
// 2. 把要写出的文件封装到File对象中
File dest = new File("e:\\CodeCharts_b.pdf");
// 3. 创建字节输入流对象
InputStream is = new FileInputStream(src);
// 4. 创建字节缓冲输入流对象
BufferedInputStream bis = new BufferedInputStream(is);
// 5. 创建字节输出流对象
OutputStream os = new FileOutputStream(dest);
// 6. 创建字节缓冲输出流对象
BufferedOutputStream bos = new BufferedOutputStream(os);
// 7. 处理文件内容读取
byte[] b = new byte[1024];
int len;
while((len = bis.read(b)) != -1) {
// 8. 向外写出文件内容
bos.write(b, 0, len);
}
// 9. 关闭资源(反着关,按创建顺序的反序)
bos.close();
bis.close();
//os.close();
//is.close();
}
}