1.缓冲流分类

2.字节缓冲流
原理:底层自带了长度为8192的缓冲区提高性能。
1.方法:
- public BufferedInputstream( Inputstream is):把基本流包装成高级流,提高读取数据的性能。
- public BufferedOutputStream(OutputStream os)把基本流包装成高级流,提高写出数据的性能。
案例1:拷贝文件
        //创建缓冲流的对象
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream("day32\\a.txt"));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("day32\\copy2.txt"));
        //拷贝,一次读写多个字节
        byte[] bytes = new byte[1024];
        int len;
        while ((len = bis.read())!= -1){
            bos.write(bytes,0,1);
        }
        //释放资源
        bos.close();
        bis.close();3.字符缓冲流
原理:底层自带了长度为8192的缓冲区提高性能。
1. 构造方法:
- public BufferedReader(Reader r):把基本流变成高级流
- public Bufferedwriter(Writer r):把基本流变成高级流
2.特有方法:
- public string readLine():读取一行数据,如果没有数据可读了,会返回null。
不会把回车读到内存当中。
- public void newLine():跨平台的换行
案例2:读取数据
        //创建字符缓冲输入流
        BufferedReader br = new BufferedReader(new FileReader("G:\\JavaReview\\day32\\a.txt"));
        //读取数据
//        String line = br.readLine();
//        System.out.println(line);
        String line;
        while ((line = br.readLine())!= null){
            System.out.println(line);
        }
        br.close();案例3:写入数据
        //创建字符缓冲输出流
        BufferedWriter bw = new BufferedWriter(new FileWriter("b.txt",true));
        //写出数据
        bw.write("杨双双是个小可爱");
        bw.newLine();
        bw.write("以后我结婚了,你一定要来哦,没有新娘我会很尴尬");
        bw.newLine();
        //释放资源
        bw.close();



















