| 类 | 描述 |
|---|---|
| 文件(创建,删除,判断) | |
| File | 创建文件或者文件夹,修改文件或者文件的名称等操作 |
| 字节流操作:二进制流 | 可以处理所有类型数据,如:图片,MP3,AVI视频文件 |
| FileInputStream | 读取,诸如图像数据的原始字节流 |
| FileOutputStream | 写入,诸如图像数据的原始字节流 |
| ByteArrayInputStream | 读取,从字节数组读取数据 |
| ByteArrayOutputStream | 写入,将数据写入字节数组 |
| 字符流操作 | 不能设置编码,不建议读文本 |
| FileReader | 读取,字符流,只能处理字符数据,纯文本数据,优先考虑使用字符流,除此之外都用字节流 |
| FileWriter | 写入 |
| 字符串操作 | 可设编码 |
| InputStreamReader | 字节流转字符流:它读取字节,并使用指定的charset将其解码为字符 |
| OutputStreamWriter | 字符流转字节流:向其写入的字符编码成使用指定的字节charset |
| BufferedReader | 从字符输入流读取文本,缓冲字符,以提供字符,数组和行的高效读取 |
| BufferedWriter | 将文本写入字符输出流,缓冲字符,以提供单个字符,数组和字符串的高效写入 |
| 对象操作 | |
| Serializable | 序列化类对象,读写保存到磁盘文件,相关类:ObjectOutputStream,ObjectInputStream |
注意: InputStream.read()方法返回一个字节,范围在0到255之间(当达到流末尾时,返回-1) Reader.read()方法返回一个字符,范围在0到65535之间(当达到流末尾时,返回-1) 父类InputStream和OutputStream的部分子类: 字节流:FileInputStream、FileOutputStream 缓冲流:BufferedInputStream、BufferedOutputStream 数据流:DataInputStream、DataOutputStream 对象流:ObjectInputStream、ObjectOutputStream