学习目标
- File类
- File类的作用
- File类的常用功能
- 字节流
- IO流的作用及分类
- 字节流读写数据
- 字节缓冲流读写数据
- Properties集合
- Properties集合的介绍
- Properties集合和IO相关功能
- Properties集合集合流操作
递归
JDK7版本前捕获处理异常
使用try…catch…finally , 把释放资源操作,放在finally代码块中,手动释放资源;代码过于复杂。
- JDK7版本捕获处理异常优化
使用try-with-resource , 需要把流对象放在try的小扩中 , 流资源在使用完毕 , 自动释放资源 , 代码相对于做了简化。
2. 字节流
2.1 字节流能解决什么问题 ?
- 字节流一般用于处理字节数据(诸如图片、视频)。
| 字节输出流 | | 字节输入流 | |
| —- | —- | —- | —- |
| 步骤 | 注意和补充 | 步骤 | 注意和补充 |
| 创建字节输出流对象 |
- 文件不存在,就创建。
- 文件存在就清空。否则加true
| 创建字节输入流对象 | 若文件不存在,直接报错。 | | 写数据 |
- 可写一个字节,一个字节数组,一个字节数组的一部分
- 写一个回车换行:\r\n
| 读数据 | 读出来的是文件中数据的码表值。 例:a → 97 | | 释放资源 | 调用close方法,断开流与文件之间的关联 | 释放资源 | 每次使用完流必须要释放资源。 |
2.2 字节缓冲流如何使用 ?
- 字节缓冲流:
- lBufferOutputStream:缓冲输出流
- lBufferedInputStream:缓冲输入流
- 构造方法:
- 字节缓冲输出流:BufferedOutputStream(OutputStream out)
- 字节缓冲输入流:BufferedInputStream(InputStream in)
- 注:字节缓冲流仅仅提供缓冲区,而真正的读写数据还得依靠基本的字节流对象进行操作。
3. Properties集合
3.1 Properties集合能解决什么问题 ?
Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。3.2 Properties集合和IO相关的功能 ?
| 方法名 | 说明 | | —- | —- | | void load(InputStream inStream) | 以字节流形式 , 把文件中的键值对, 读取到集合中 | | void load(Reader reader) | 以字符流形式 , 把文件中的键值对, 读取到集合中 | | void store(OutputStream out, String comments) | 把集合中的键值对,以字节流形式写入文件中 , 参数二为注释 | | void store(Writer writer, String comments) | 把集合中的键值对,以字符流形式写入文件中 , 参数二为注释 |
- 注:字节缓冲流仅仅提供缓冲区,而真正的读写数据还得依靠基本的字节流对象进行操作。
4. 递归
4.1 递归思想及能解决什么问题 ?
4. 当日问题小结
4.1 当日遇到的问题
4.2 出现问题原因
4.3 解决问题方案
若有收获,就点个赞吧

