流(stream)代表了来自某个输入源,或者将要流向某个输出源的一系列数据。
按流向,可以分为输入流和输出流。
- 输入流(input stream)
通过输入流,数据流入程序,程序读取输入流中的数据。 - 输出流(output stream)
通过输出流,数据流出程序,程序写输出流中的数据到数据的接收端。
按对数据的处理方式,在比较抽象的层次上可以分为字节流
(byte stream)和字符流(character stream)
- 字节流(byte stream)
以字节为单位处理数据,比如读写一个图片。 - 字符流(character stream)
以字符为单位处理数据,比如读写一张文本文件。
流的另一端,无论是数据源或者数据接收端都可以是多种形式,包括本地硬盘上的文件,某种外设设备,其他软件程序,内存中数据存储区等。