基础IO

IO流的分类

  1. 网络数据IO
  2. 本地文件IO

特性

  1. 实质是数据在不同设备见流转
  2. 只能处理一次(读取操作后的部分就没有了)
  3. 使用完毕要关闭(反向关闭)

类型划分

  1. 输入/输出:input输入、output输出
    基础IO
  2. 字节/字符流
    字节流:字节型二进制数据 Stream
    字符流:字符型文本数据 Writer输出字符流、Reader输入字符流
    转换流:字节流和字符流之间需要通过转换流转换 InputStreamReader输入转换、OutputStreamReader输出转换
  3. 文件流:File
  4. PrintWriter:打印流:打印数据到某个流对象 应用场景:PrintWriter可以应用在将输出流打印输出到其他输出流,如字符串获取异常堆栈信息,可以结合PrintWriter、StringWriter来获取
  5. StringWriter:字符串输出流
  6. 缓冲流:Buffered

特殊的IO操作类、工具类
Scanner:接收输入
File:文件类
Files:文件操作的工具类
Class/ClassLoader对象.getResourceAsStream() 项目中一般使用ClassLoader.getResourceAsStream()通过相对路径获取输入流

缓冲流和其他流的区别
基础IO

序列化和反序列化
基础IO
java序列化和反序列化:java对象和二进制数据相互交换