一、
根据流的方向可以将其分为两类:输入流和输出流。用户可以从输入流中读取信息,向输出流写入信息。
二、
实际应用中,通常是将节点流与处理流二者结合起来使用。节点流直接与指定的源或目标相连,例如某个文件、某个网络连接等。
而处理流则对节点流或其他处理流进一步进行封装,提供更丰富的输入/输出操作能力,例如缓冲、按字符串读写等。
三、Outputstream
请特别注意,write系列方法进行写操作时并不一定直接将所写的内容写出,而先将需要写出的内容放到输出缓冲区中,直到缓冲区满,调用flush方法刷新或调用close方法关闭流时才真正输出。这样处理可以减少实际的写出次数。提高系统效率,如果需要写出的内容立即输出,需要在完成write方法的调用后调用flush方法刷新流,否则程序可能不能正常工作。
四、常用的节点流
对应源或目标类型 字符流 字节流
磁盘文件 FileReader、FileWriter FileInputs、Fileout......
内存数组 CharArrayReader。。。 ByteArrayInput。。。。。。。。。。
内存字符串 StringReader、StringWriter
管道 pipReader。。。。。 pipedInput。。。。。。。。。。
五、常用的处理流