java基础之字节缓冲流

目录

1:分类

2:解释

3:练习

1:复制文件

2:复制图片

2:复制视频


1:分类

字节缓冲输出流 BufferedOutputStream

字节缓冲输入流 BufferedInputStream

注意:他们的构造方法要输入的是input或者output的对象而他们是抽象类不能实例化所以应该传入他们的子类FileInputsteam或者FileOutputsteam

2:解释

由于他们继承于OutputStream或者InputStream所以与FileInputSteam或者FileOutputSteam具有一样的方法,唯一不同的是写入数据的时候需要刷新一下用flush()方法。

3:练习

1:复制文件

将当前目录下的a.txt复制到当前文件c.txt中

  public static void main(String[] args) throws Exception{
        //用匿名内部类形式创建缓冲输入和输出流
        BufferedInputStream bi = new BufferedInputStream(new FileInputStream("a.txt"));
        BufferedOutputStream bo = new BufferedOutputStream(new FileOutputStream("c,txt"));
        //复制文件
        byte[] bytes =new byte[1024];
        int l = 0;
        while((l=bi.read(bytes))!=-1){
            bo.write(bytes);
            bo.flush();//刷新
        }
        //关闭资源
        bo.close();
        bo.close();
    }

结果是当前目录下有一个c与a一样

2:复制图片

将C:\Users\婷\Pictures\视频项目\\图片.jpg复制到当前目录为图片.jpg

  public static void main(String[] args) throws Exception{
        //创建字节缓冲输入输出流
        BufferedInputStream bi = new BufferedInputStream(new FileInputStream("C:\\Users\\婷\\Pictures\\视频项目\\图片.jpg"));
        BufferedOutputStream bo = new BufferedOutputStream(new FileOutputStream("图片.jpg"));
        //复制图片
        byte[] b = new byte[1024];
        int l=0;
        while((l=bi.read(b))!=-1){
            bo.write(b);
            bo.flush();
        }
        //关闭资源
        bo.close();
        bi.close();
    }

结果是当前目录下出现了一个图片与所要复制的一样。

2:复制视频

将D:\t.mp4复制到当前目录为视频.mp4

public static void main(String[] args) throws Exception{
        //创建字节缓冲输入和输出对象
        BufferedInputStream bi = new BufferedInputStream(new FileInputStream("D:\\t.mp4"));
        BufferedOutputStream bo = new BufferedOutputStream(new FileOutputStream("视频.mp4"));
        //复制视频
        int l =0;
        byte[] b = new byte[1024];
        while((l=bi.read(b))!=-1){
            bo.write(b);
            bo.flush();
        }
        //关闭资源
        bo.close();
        bi.close();
    }

结果是当前目录出现了视频与要复制一样

Guess you like

Origin blog.csdn.net/weixin_50691399/article/details/121070214