字节缓冲流
1.字节缓冲流
- BufferOutputStream:该类实现缓冲输出流。通过设置这样的输出流,应用程序可以向底层输出流写入字节,而不必为写入的每个字节导致底层系统的调用
- BufferInputStream:创建BufferInputStream将创建一个内部缓冲区数组。当从流中读取或跳过字节时,内部缓冲区将根据需要从所包含的输入流中重新填充,一次很多字节
2.构造方法
- 字节缓冲输入流:BufferedOutputStream(OutputStream out)
- 字节缓冲输入流:BufferedInputStream(InputStream in)
构造方法需要的是字节流,而不是具体的文件或者路径,字节缓冲流仅仅提供缓冲区,而真正的读写数据还得依靠基本的字节流对象进行操作
package com.bytestream;
import java.io.*;
public class BufferOutputStreamDemo01 {
public static void main(String[] args) throws IOException {
//FileOutputStream fos = new FileOutputStream("基础语法\\bos.txt");
//BufferedOutputStream bos=new BufferedOutputStream(fos);
BufferedOutputStream bos=new BufferedOutputStream(new FileOutputStream("基础语法\\bos.txt"));
//写数据
bos.write("hello\r\n".getBytes());
bos.write("world\r\n".getBytes());
bos.close();
BufferedInputStream bis = new BufferedInputStream(new FileInputStream("基础语法\\bos.txt"));
//读数据
//一次读取一个字节数组的数据
byte[] bys=new byte[1024];
int len;
while ((len=bis.read(bys))!=-1){
System.out.print(new String(bys,0,len));
}
bis.close();
}
}