2025/11/10 IO流(转换流、序列化流/反序列化流、打印流、压缩流/解压缩流)Commons-io Hutool工具包 练习-制造假数据



IO流:随用随创建,什么时候不用什么时候关闭
转换流:字符流和字节流之间的桥梁(属于字符流)


转换文件编码
JDK11时被淘汰了

替代方案






总结

序列化流/对象操作输出流(属于字节流):可以把java中的对象写道本地文件中


序列化流的小细节
使用对象输出流将对象保存到文件时会出现NotSerializableException异常
![]()
![]()
![]()
反序列化流/对象操作输入流
![]()


细节:
![]()
![]()

序列化流/反序列化流的细节汇总

练习:用对象读写多个对象


在读取的时候只有一个文件,不确定里面到底有几个对象


先写再读取
打印流

分类:字节打印流、字符打印流

1)字节打印流
字节打印流的构造方法

字节流底层没有缓冲区,开不开刷新都一样
字节打印流的成员方法

三个打印方法都可以实现数据的原样写出

了解其他的占位符
2)字符打印流
![]()



打印流的应用场景

打印流总结

解压缩流

压缩包里面的每一个文件的本质就是ZipEntry对象
![]()


压缩流
![]()
压缩单个文件

压缩文件夹



Commons-io(开源工具包,提高io流效率)
使用步骤:
1)在项目中创建一个文件夹:lib
2)将jar包复制粘贴到lib文件夹
![]()
4)在类中导包使用
常见方法



Hutool工具包
练习-制造假数据






男生的名字和女生的名字








