百木园-与人分享,
就是让自己快乐。

Java基础——字节缓冲流

字节缓冲流

1.BufferedOutputStream:该类实现缓冲输出流,通过设置这样的输出流,应用程序可以向底层输出流写入字节,而不必为写入的每个字节导致底层系统的调用

2.BufferedInputStream:创建BufferedIntputStream将创建一个内部缓冲去数组,当从流中读取或者跳过字节时,内部缓冲去将根据需要从所包含的输入流中重新填充,一次很多字节

构造方法:

字节缓冲输入流:BufferedOutputStream(OutputStream out):创建一个新的缓冲输出流,以将数据写入指定的底层输出流。

字节缓冲输出流:BufferedInputStream(InputStream in):创建一个 BufferedInputStream并保存其参数,输入流 in供以后使用。

为什么构造方法需要的时字节流而不是具体的文件名或者路径?

因为字节缓冲流仅仅提供缓冲区,而真正的读写数据还得依靠基本的字节流对象进行操作

public class Demo04 {
  public static void main(String[] args) throws IOException {
      //创建字节缓冲输入流
      BufferedOutputStream bops=new BufferedOutputStream(new FileOutputStream(\"E:\\\\abc.txt\"));
      //创建字节缓冲输出流
      BufferedInputStream bips=new BufferedInputStream(new FileInputStream(\"E:\\\\abc.txt\"));
      //写数据
      bops.write(\"hello\\r\\n\".getBytes());
      bops.write(\"world\\r\\n\".getBytes());
      bops.close();
      //读数据,方式一
      int by;
      while((by=bips.read())!=-1){
          System.out.print((char)by);
      }

      System.out.println(\"------------------------------------------------\");
      //方式二 一次读取一个字节数组
      byte[]bytes=new byte[1024];
      int len;
      while((len=bips.read(bytes))!=-1){
          System.out.print(new String(bytes,0,len));
      }
      bips.close();
  }
}

 


来源:https://www.cnblogs.com/CYan521/p/16108093.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » Java基础——字节缓冲流

相关推荐

  • 暂无文章