您的位置:首页 > 编程语言 > Java开发

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类图:



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流关闭无效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: