IO流(一)概述

来源:互联网 发布:手机淘宝如何退保证金 编辑:程序博客网 时间:2024/06/05 03:20

转载请注明出处:http://blog.csdn.net/github_39430101/article/details/77075109

简介

流分为输入流和输出流,是用来处理设备上的数据。这里的设备指硬盘,内存,网络传输,缓冲等。Java IO中包含了许多InputStream、OutputStream、Reader、Writer的子类。这样设计的原因是让每一个类都负责不同的功能。各类用途如下:

  • 文件访问
  • 网络访问
  • 内存缓存访问
  • 线程内部通信(管道)
  • 缓冲
  • 过滤
  • 读写基本类型
  • 读写对象

IO流类

这里写图片描述

IO流分类

按方向分类

输入流 InputStream 所有字节输入流的父类 FileInputStream 文件字节输入流 ByteArrayInputStream 字节数组输入流 Reader 读取字符流的抽象类 FileReader 文件字符输入流 输出流 OutputStream 所有字节输出流的父类 FileOutputStream 文件字节输出流 ByteArrayOutputStream 字节数组输出流 Writer 写入字符流的抽象类 FileWriter 文件字符输出流

按功能分类

按照流是否直接与特定的地方(如磁盘、内存、设备等)相连,分为节点流和处理流两类

节点流 父类 InputStream OutputStream Reader Writer 文件 FileInputStream FileOutputStream FileReader FileWriter 数组 ByteArrayInputStream ByteArrayOutputStream CharArrayReader CharArrayWriter 字符串 StringReader StringWriter 管道 PipedInputStream PipedOutputStream PipedReader PipedWriter 处理流 缓冲流 BufferedInputStream BufferedOutputStream BufferedReader BufferedWriter 转换流 InputStreamReader OutputStreamWriter 数据流 DataInputStream DateOutputStream 对象流 ObjectInputStream ObjectOutputStream 管道 PipedInputStream PipedOutputStream PipedReader PipedWriter