- 缓冲流是在流管道中增加缓存的数据
- 让我们在使用流读取的文字更加的流畅
- 缓冲流属于高级流,创建时需要通过低级流
- 字节型和字符型流属于低级流
一、BufferedInputSteam
1. 包 java.io
2. 继承 FilterInputStream
3. 构造方法
构造方法 | 说明 |
---|---|
BufferedInputStream(InputStream in) | 用低级流进行构建 |
BufferedInputStream(InputStream in,int size) | 用低级流进行构建,可选择缓存大小 |
4. 常用方法
二、BufferedOutputSteam 和BufferedInputStream类似
三、BufferedReader
4. 常用方法
返回值 | 方法名 | 说明 |
---|---|---|
String | readLine() | 每次读取一行信息 |
二、BufferedWriter
4. 常用方法
返回值 | 方法名 | 说明 |
---|---|---|
void | newLine() | 写入一个换行 |
void | write(String s) | 写入一个字符串 |
对象流--将对象直接存在文件中
对象的序列化-----将一个完整的对象,拆分成字节碎片,存在文件中
对象的反序列化--将文件中记录的对象字节碎片,反过来组合成一个完整的对象
五、ObjectInputSteam ObjectOutputStream
1. 包 java.io
2. 继承 InputStream
3. 构造方法
4. 常用方法
返回值 | 方法名 | 说明 |
---|---|---|
void | writeObject(Object obj) | 将一个对象写入输出流 |
Object | readObject() | 从对象输入流ObjectInputStream中读取一个对象 |
5.对象的序列化和反序列化
- 如果想要将对象序列化到文件中,需要让对象实现Serializable接口
- 这是一个示意性接口,没有需要具体化的方法
- 如果想要将对象反序列化,需要给对象提供一个序列化的版本号
所以应该在序列化时,需要在对象中添加private long serialVersionUID属性(long类型)
网友评论