IO流学习总结(中)-----操作文件的知识梳理

时间:2021-07-07 09:30:42

以下都是针对 txt等文本文件的操作
还记得上篇着重介绍的File

再来重温一遍 File就是文件的路标意思 带着我们找到这个文件或者文件夹的所在地 而且它还可以是不存在的抽象路径

介绍以前 还是老样子 先来个整体概括有个印象: 此处输入输出是针对程序而言的

  • 字节流
    1. FileOutputStream 输出通道 向文件输出数据
    2. FileInputStream 输入通道 从文件中读入数据
  • 字节流的异常处理
  • 字节缓冲流
    1. BufferedOutputStream 输出通道 向文件输出数据
    2. BufferedInputStream 输入通道 从文件中读入数据
  • 字符流
    1. FileWriter 输出通道 向文件输出数据
    2. FileReader 输入通道 从文件中读入数据
  • 缓冲字符流
    1. BufferedWriter 输出通道 向文件输出数据
    2. BufferedReader 输入通道 从文件中读入数据
  • 装饰器
  • 序列流:SequenceInputStream对多个流进行合并。
  • 对象的序列化
    1. ObjectOutputStream 对象的序列化: 将内存中的对象直接写入到文件设备中
    2. ObjectInputStream 对象的反序列化: 将文件设备中持久化的数据转换为内存对象
    3. Serializable 序列化类要继承的接口 标识作用
    4. transient 局部不序列化
    5. serialVersionUID 统一作用
  • 配置文件:Properties 提高代码的维护性。
  • 打印流
    1. PrintStream 字节打印流
    2. PrintWriter 字符打印流
  • 转换流
    1. InputStreamReader
    2. OutputStreamWriter

别被我列的这些吓到以为很多 其实都是举一反三 内容总结下来也就那几个而已
额外补充了解:
随机访问RandomAccessFile类:支持随机访问方式,可以跳转到文件的任意位置处读写文件 再要访问一个文件的时候 不想从文件从头读到尾 而是希望像访问一个数据库一样访问一个文本文件 这个时候时候RandomAccessFile是最佳选择

接下来我们来了解一下 写入和读出
既然我们可以找到这个文件 那么我们该如何去操作它的内容呢 这个时候我们得给它创建一个通道 传输通道 接下里才是真正的IO流奥义了. 此处画重点 敲黑板
请看下一章