其他分享
首页 > 其他分享> > IO流+原理和疑问

IO流+原理和疑问

作者:互联网












节点流和处理流







问:IO流为什么要用缓冲区?



问:IO流中可以通过自定义一个数组来当做缓冲区,为什么还要使用Buffered缓冲处理流包装呢?










有哪些IO流



节点流:

1.File文件流:对文件进行读、写操作。

2.Memory

3.Pipe管道流。:实现管道的输入和输出(进程间通信)


处理流:

1.Buffering缓冲流:在读入或写出时,对数据进行缓存,以减少I/O的次数:BufferedReader与BufferedWriter、BufferedInputStream与BufferedOutputStream。

2.Filtering 滤流:在数据进行读或写时进行过滤:FilterReader与FilterWriter、FilterInputStream与FilterOutputStream。

3.Converting between Bytes and Characters 转换流:按照一定的编码/解码标准将字节流转换为字符流,或进行反向转换(Stream到Reader):InputStreamReader、OutputStreamWriter。

4.Object Serialization 对象流 :ObjectInputStream、ObjectOutputStream。

5.DataConversion数据流: 按基本数据类型读、写(处理的数据是Java的基本类型(如布尔型,字节,整数和浮点数)):DataInputStream、DataOutputStream 。

6.Counting计数流: 在读入数据时对行记数 :LineNumberReader、LineNumberInputStream。

7.Peeking Ahead预读流: 通过缓存机制,进行预读 :PushbackReader、PushbackInputStream。

8.Printing打印流: 包含方便的打印方法 :PrintWriter、PrintStream。





















参考链接:

https://blog.csdn.net/weixin_46055348/article/details/125713128

https://www.zhihu.com/question/298765555

https://blog.csdn.net/0602/article/details/8586



标签:read,处理,IO,缓冲区,原理,byte,节点,疑问
来源: https://www.cnblogs.com/kakafa/p/16575966.html