package com.i; import java.io.*; public class Test_buffer { /** * 字节缓冲区流:缓冲区的构造方法只是为字节流提供了一个缓冲区,底层还是由字节流来完成读写 * BufferedOutputStream: * BufferedInputStream: * * 构造方法: * public BufferedOutputStream(OutputStream out, * int size) * 创建一个新的缓冲输出流,以便以指定的缓冲区大小将数据写入指定的底层输出流。 * * 底层代码如下: * public BufferedOutputStream(OutputStream out) { * this(out, 8192); * } * * */ public static void main(String[] args) throws FileNotFoundException { BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("bb.txt")); BufferedInputStream bis = new BufferedInputStream(new FileInputStream("bb.txt")); } }
编码解码概述图:
package com.i; import java.io.*; import java.nio.charset.StandardCharsets; import java.util.Arrays; public class Test_liu { /** * 字节流读取数据可能出现的问题: * 汉字占两个字节。一个字节一个字节读取在控制台输出会无法识别出这是个汉字。 *