java 中 IO 流有哪些?

2019-09-15  

  • 按数据流向:输入流和输出流

输入和输出都是从程序的角度来说的。

输入流:数据流向程序

输出流:数据从程序流出。
    

  • 按处理单位:字节流和字符流

字节流:一次读入或读出是8位二进制

字符流:一次读入或读出是16位二进制

JDK 中后缀是 Stream 是字节流;后缀是 Reader,Writer 是字符流

 

  • 按功能功能:节点流和处理流

节点流:直接与数据源相连,读入或写出

处理流:与节点流一块使用,在节点流的基础上,再套接一层

 

最根本的四大类:InputStream(字节输入流),OutputStream(字节输出流),Reader(字符输入流),Writer(字符输出流)

四大类的扩展,按处理单位区分

InputStream FileInputStream、PipedInputStream、ByteArrayInputStream、BufferedInputstream、SequenceInputStream、DataInputStream、ObjectInputStream
OutputStream FileOutputStream、PipedOutputStream、ByteArrayOutputStream、BufferedOutputStream、DataOutputStream、ObjectOutputStream、PrintStream
Reader FileReader、PipedReader、CharArrayReader、BufferedReader、InputStreamReader
Writer FileWriter、PipedWriter、CharArrayWriter、BufferedWriter、InputStreamWriter、PrintWriter

 

常用的流

对文件进行操作 FileInputStream(字节输入流)、FileOutputStream(字节输出流)、FileReader(字符输入流)、FileWriter(字符输出流)
对管道进行操作 PipedInputStream(字节输入流)、PipedOutStream(字节输出流)、PipedReader(字符输入流)、PipedWriter(字符输出流)
字节/字符数组 ByteArrayInputStream、ByteArrayOutputStream、CharArrayReader、CharArrayWriter
Buffered 缓冲流 BufferedInputStream、BufferedOutputStream、BufferedReader、BufferedWriter
字节转化成字符流 InputStreamReader、OutputStreamWriter
数据流 DataInputStream、DataOutputStream
打印流 PrintStream、PrintWriter
对象流 ObjectInputStream、ObjectOutputStream
序列化流 SequenceInputStream

 

ConstXiong 备案号:苏ICP备16009629号-3