BufferedOutputStream:缓冲区字节输出流

---------------------------------

1.Object --> OutputStream --> FilterOutputStreasm --> BufferedOutputStreamss

2.使用装饰模式

3.write()

BufferedInputStream : 缓冲字节区输入流

-------------------------------

1.Object --> InputStream --> FilterInputStream --> BufferedInputStream

        2.read()

3.close()

释放与之关联的系统资源。多次关闭没有影响。

从外部向里面关闭。

        FileReader

        FileWriter

        

        BufferedReader

        LineNumberReader

        BufferedWriter

        

        --------------------

        

        FileInputStream

        FileOutputStream

        

        BufferedInputStream

        BufferedOutputStream

字节数组输出流:ByteArrayOutputStream

--------------------------------------

1.Object --> OutputStream --> ByteArrayOutputStream

2.在内存中开辟空间,存放数据。不是缓冲区流

字节数组输入流 : ByteArrayInputStream

--------------------------------------

1.Object --> InputStream --> ByteArrayInputStream

字节数组输出流 : ByteArrayOutputStream

--------------------------------------

1.Object --> OutputStream --> ByteArrayOutputStream

//使用OutputStreamWriter对FileOutputStream包装,通过包装流写入字符数据到文件中。

InputStreamReader :

---------------------------------------

是从字节流到字符流的桥梁,读取字节数组并解码(使用指定的字符集)成字符。字符集可以使用名称指定也可以

指定charset对象,或者平台默认也可以。

每次read()方法调用,都会引发底层字节流读取一个或者多个字节数据。如果需要高效来处理,可以对其使用

BufferedReader进行包装。

1.Object --> Reader --> InputStreamReader

2.不是缓冲区流

3.使用时,尽量使用BufferedReader对其进行包装,提高效率。

OutputStreamWriter :

---------------------------------------

1.是从字符流到字节流的桥梁。

        2.Object --> Writer --> OutputStreamWriter

3.不是缓冲区流

4.使用时,尽量使用BufferedReader对其进行包装,提高效率。