Java中IO流的总结 流分类 四种文件流(节点流) 四种缓冲流(处理流) 对象流(处理流) 转换流(字符流) 内存流 打印流(处理流输出流) 标准流(节点流)

Java中IO流的总结
流分类
四种文件流(节点流)
四种缓冲流(处理流)
对象流(处理流)
转换流(字符流)
内存流
打印流(处理流输出流)
标准流(节点流)

有关Java中IO流总结图
Java中IO流的总结
流分类
四种文件流(节点流)
四种缓冲流(处理流)
对象流(处理流)
转换流(字符流)
内存流
打印流(处理流输出流)
标准流(节点流)

按方向分

输入流
输出流

按单位分

字节流
字符流

按功能分

节点流
处理流(过滤流)

其他

  1. 所有的流继承与这四类流:InputSteam、OutputStream、Writer、Reader
    2.带有Writer和Reader的流均为字符流,没有的都为字节流

四种文件流(节点流)

字节流

FileInputStream
FileOutputStream

字符流

FileReader
FileWriter

四种缓冲流(处理流)

字节流

BufferedInputStream

BufferedOutputStream

字符流

BufferedReader【新增readLine()】

BufferedWriter【新增newLine()】

对象流(处理流)

输入流字节流处理流:ObjectInputStream

输出流字节流处理流:ObjectOutputStream

转换流(字符流)

InputStreamReader

1- 是Reader的子类,将输入的字节流变为字符流,即:将一个字节流的输入对象变为字符流的输入对象。

2-InputStreamReader需要和InputStream“套接”,它可以将字节流中读入的字节解码成字符

OutputStreamWriter

1-是Writer的子类,将输出的字符流变为字节流,即:将一个字符流的输出对象变为字节流的输出对象。

2- OutputStreamWriter需要和OutputStream“套接”,它可以将要写入字节流的字符编码成字节

内存流

内存流主要用来操作内存

ByteArrayInputStream: 主要完成将内容从内存读入程序之中

ByteArrayOutputStream:主要是将数据写入到内存中。

输入和输入可以把文件作为数据源,也可以把内存作为数据源。

打印流(处理流输出流)

打印流分类

字节打印流PrintStream

字符打印流PrintWriter

构造方法

PrintStream(OutputStream out)

PrintStream(OutputStream out, boolean autoFlush自动刷新)

PrintWriter(Writer out)

PrintWriter(Writer out, boolean autoFlush)

PrintWriter(OutputStream out)

PrintWriter(OutputStream out, boolean autoFlush)

打印输出位置

【控制台】 看构造方法中参数的类型 : 若是System.out—–>打印在控制台上
【文件中 】 看构造方法中参数类型:若是文件—->打印在指定文件中

标准流(节点流)

标准输入流System.in:读取控制台 用户输入的内容

标准输出流System.out:往控制台输出内容

标准错误流System.err: 往控制台输出内容,区别是字体是红色的

重新定向

System.setIn(参数)

System.setOut(参数)

System.setErr(参数)