IO 流二

目录

字符流

缓冲流

转换流

序列化对象


字符流

字符输入流 - 一次读取一个字符
 

 

 

 

 

 

 

 

 

缓冲流

 缓冲流概述

字节缓冲流性能优化原理:

l 字节缓冲输入流 自带 8KB缓冲池 以后我们直接从缓冲池读取数据,所以性能较好
l 字节缓冲输出 自带 8KB缓冲池 数据就直接写入到缓冲池中去, 写数据 性能极高了

字节缓冲流

l 字节缓冲输入流: BufferedInputStream ,提高字节输入流读取数据的性能
l 字节缓冲输出流: bufferedoutputstream ,提高字节输出流读取数据的性能

 

1. 字节缓冲流为什么提高了操作数据的性能
l 字节缓冲流自带 8KB 缓冲区
l 可以提高原始字节流、字符流读写数据的性能
2. 字节缓冲流的功能如何调用
l public bufferedoutputstream ​( OutputStream os )
l public BufferedInputStream ​( InputStream is )
l 功能上并无很大变化,性能提升了。

 

字符缓冲输入流

l 字符缓冲输入流: BufferedReader
l 作用:提高字符输入流读取数据的性能,除此之外多了按照行读取数据的功能

 

字符缓冲输出

l 字符缓冲输出流: BufferedWriter
l 作用:提高字符输出流写取数据的性能,除此之外多了换行功能

 

转换流

1、如果代码编码和文件编码不一致,使用字符流直接读取还能不乱码吗?

l 会乱码。

2、如果如何解决呢?

l使用字符输入转换流

l可以提取文件GBK)的原始字节流,原始字节不会存在问题。

                     然后把字节流以指定编码转换成字符输入流,这样字符输入流中的字符就不乱

         

 

 

 

 

 

序列化对象

对象序列化

l 作用:以内存为基准, 把内存中的对象存储到磁盘文件中去,称为对象序列化。
l 使用到的流是对象字节输出流: ObjectOutputStream

 

1. 对象序列化的含义是什么?
l 把对象数据存入到文件中去。
2. 对象序列化用到了哪个流?
l 对象字节输出 ObjectOutputStram
l public void writeObject (Object obj)
3. 序列化对象的要求是怎么样的?
l 对象必须实现序列化接口

 

 

对象反序列化

l 使用到的流是对象字节输入流: ObjectInputStream
l 作用:以内存为基准, 把存储到磁盘文件中去的对象数据恢复成内存中的对象,称为对象反序列化

 

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...
win11本地账户怎么改名?win11很多操作都变了样,用户如果想要...