java IO 缓冲流

缓冲流

概念

  • 缓冲流,根据流的分类分类字节缓冲流与字符缓冲流,可提高IO流的读写速度。

字节缓冲流

  • 写入数据到流中,字节缓冲输出流 BufferedOutputStream
  • 读取流中的数据,字节缓冲输入流 BufferedInputStream

BufferedOutputStream字节缓冲输出流

  • 该类实现缓冲的输出流。通过设置这种输出流,应用程序就可以将各个字节写入底层输出流中,而不必针对每次字节写入调用底层系统。
  • java.lang.Object
    继承者 java.io.OutputStream
    继承者 java.io.FilterOutputStream
    继承者 java.io.BufferedOutputStream

构造方法

  • BufferedOutputStream(OutputStream out)
    创建一个新的缓冲输出流,以将数据写入指定的底层输出流。
  • BufferedOutputStream(OutputStream out, int size)
    创建一个新的缓冲输出流,以将具有指定缓冲区大小的数据写入指定的底层输出流。

使用步骤

  • 创建字节输出流,绑定文件
  • 创建字节缓存输出流的对象,传递字节输出流
  • 写入内容write
  • 释放资源close
  • 代码示例
    FileOutputStream fis = new FileOutputStream("c:\\ab.txt");	
    BufferedOutputStream bos = new BufferedOutputStream(fis);
    byte[] bytes = "helloworld".getBytes();
    bos.write(bytes);
    bos.close();
    

BufferedInputStream字节缓冲输入流

  • java.lang.Object
    继承者 java.io.InputStream
    继承者 java.io.FilterInputStream
    继承者 java.io.BufferedInputStream

构造方法

  • BufferedInputStream(InputStream in)
    创建一个 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。
  • BufferedInputStream(InputStream in, int size)
    创建具有指定缓冲区大小的 BufferedInputStream 并保存其参数,即输入流 in,以便将来使用。

使用步骤

  • 创建字节输入流,绑定文件
  • 创建字节缓存输入流的对象,传递字节输入流
  • 读取内容read
  • 释放资源close
  • 代码示例
    FileInputStream fis = new FileInputStream("c:\\ab.txt");	
    BufferedInputStream bis = new BufferedInputStream(fis);
    byte[] bytes = new byte[1024];
    int len = 0;
    while((len=bis.read(bytes))!=-1) {
    	System.out.print(new String(bytes,0,len));
    }
    bis.close();
    
上一篇:20-java学习-IO流-FileOutputStream、FileInputStream、BufferedOutputStream、BufferedInputStream&案例代码


下一篇:《Unix/Linux系统编程》第9章学习笔记 20191329马静怡