Java IO学习笔记之字节流和字符流
2017-08-17 16:33
585 查看
Java的I/O类库的基本架构
Java的I/O操作类在包java.io,大概有将近80个类,分为:
基于字节操作的I/O接口:InputStream和OutputStream。
基于字符操作的I/O接口:Writer和Reader。
基于磁盘操作的I/O接口:File。
基于网络操作的I/O接口:Socket。
InputStream类图:
![](https://img-blog.csdn.net/20170817161254888?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzYwMDY1NTM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
OutputStream类图:
![](https://img-blog.csdn.net/20170817161318684?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzYwMDY1NTM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
Reader类图:
![](https://img-blog.csdn.net/20170817161356635?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzYwMDY1NTM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
Writer类图:
![](https://img-blog.csdn.net/20170817161413123?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzYwMDY1NTM=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
字节流笔记:
1、InputStream和OutputStream:抽象类,字节流,实际使用中只能是子类。
2、ByteArrayInputStream和ByteArrayOutputStream:带有缓冲区的字节流,并且关闭流操作是无效的,也就是说这两个类的方法在流关闭以后还可以调用。
3、FileInputStream和FileOutputStream:读写字节文件的流。
4、ObjectOutputStream和ObjectInputStream:读写实现了Serializable序列化接口的对象。
5、PipedInputStream和PipedOutputStream:实现在两个线程,通过管道输入输出流建立管道已完成数据交换,一旦其中某条线程死亡,管道破坏。
6、FilterInputStream和FilterOutputStream:这个两个类覆盖了InputStream和OutputStream的所有方法,其子类进一步覆盖一些方法,提供额外的功能。
字符流笔记:
1、Reader和Writer:抽象类,字符流,实际使用中只能是子类。
2、InputStreamReader和OutputStreamReader:这两个是字节流和字符流之间的桥梁,前者从字节文本读取字节并且使用指定的字符集解码成字符,后者把字符用指定的字符集编码成字节写入的字节文本。
3、StringReader和StringWriter:以字符串作为源或者终点,并且在StringWriter的流关闭以后,任然可以调用其方法,也就是说关闭无效。
4、PipedReader和PipedWriter:字符管道。
5、CharArrayReader和CharArrayWriter:带有缓冲区的字符流。对于CharArrayWriter流关闭无效。
Java的I/O操作类在包java.io,大概有将近80个类,分为:
基于字节操作的I/O接口:InputStream和OutputStream。
基于字符操作的I/O接口:Writer和Reader。
基于磁盘操作的I/O接口:File。
基于网络操作的I/O接口:Socket。
InputStream类图:
OutputStream类图:
Reader类图:
Writer类图:
字节流笔记:
1、InputStream和OutputStream:抽象类,字节流,实际使用中只能是子类。
2、ByteArrayInputStream和ByteArrayOutputStream:带有缓冲区的字节流,并且关闭流操作是无效的,也就是说这两个类的方法在流关闭以后还可以调用。
3、FileInputStream和FileOutputStream:读写字节文件的流。
4、ObjectOutputStream和ObjectInputStream:读写实现了Serializable序列化接口的对象。
5、PipedInputStream和PipedOutputStream:实现在两个线程,通过管道输入输出流建立管道已完成数据交换,一旦其中某条线程死亡,管道破坏。
6、FilterInputStream和FilterOutputStream:这个两个类覆盖了InputStream和OutputStream的所有方法,其子类进一步覆盖一些方法,提供额外的功能。
字符流笔记:
1、Reader和Writer:抽象类,字符流,实际使用中只能是子类。
2、InputStreamReader和OutputStreamReader:这两个是字节流和字符流之间的桥梁,前者从字节文本读取字节并且使用指定的字符集解码成字符,后者把字符用指定的字符集编码成字节写入的字节文本。
3、StringReader和StringWriter:以字符串作为源或者终点,并且在StringWriter的流关闭以后,任然可以调用其方法,也就是说关闭无效。
4、PipedReader和PipedWriter:字符管道。
5、CharArrayReader和CharArrayWriter:带有缓冲区的字符流。对于CharArrayWriter流关闭无效。
相关文章推荐
- Java IO学习笔记(三):字节流与字符流
- Java IO学习笔记(三):字节流与字符流
- Java IO学习笔记(三):字节流与字符流
- Java IO学习笔记(三):字节流与字符流
- Java IO学习笔记(三):字节流与字符流
- 12. JAVA IO Party 1 (目标、File类、RandomAccessFile类、字节流和字符流、转换流) ----- 学习笔记
- 黑马程序员________Java中IO技术字节流字符流的应用及File类学习笔记
- 黑马程序员---java IO-字符流 学习笔记
- Java学习笔记之 IO包 字符流
- Java IO学习1:字节流与字符流
- javaio学习笔记-字符流类(2)
- java的IO学习,字节流与字符流的编码讲解
- [学习笔记]Java IO之字符流
- Java IO学习笔记:字节流
- Java IO学习笔记:字节流
- 黑马程序员 java学习笔记 Day5:IO流、字符流、字节流
- 黑马程序员学习笔记JAVA高级视频 IO输入输出字符流之Writer类
- Java IO学习笔记:字符流
- Java IO学习笔记:字符流
- java学习之路----IO-------字节流和字符流的区别,文件的复制