1.
2.File类是在java.io包下,在程序中操作文件和目录
递归
IO包
1.什么是IO:针对文件内容操作的,java中的I/O操作主要是使用java.io包下的内容进行输出和输出操作
2.输入(也叫读取数据),输出也叫写出数据
3.IO流分类
1.根据数据的流向,分为输入流和输出流
输入流:把数据从其他设备上读取到内存中的流
以InputStream Reader结尾
2.输出流:把数据从内存中写出到其他设备上的流
以OutputStream Writer结尾
2. 根据数据的类型分为: 字节流和字符流
1. 字节流: 以字节为单位,读写数据的流,⽐如读取图⽚或视频
1. 以InputStream OutputStream结尾
2. 字符流: 以字符为单位,读写数据的流,⽐如读取⽂本⽂件
1. 以Reader Writer结尾
4. 字节流
1. 字节输⼊流InputStream 读⽂件,常⽤⽅法read(),close()
2. ⽤它的⼦类FileInputStream 专门进⾏⽂件的读取操作
5. 字符流
1. 当使⽤字节流读取⽂本⽂件时,如果遇到中⽂字符,就会出问题, 因为⼀个中⽂占⽤多个字节,需要⽤字符流,以字符为单位,读取 数据
2. 字符输⼊流 Reader⼦类 FileReader
3. 字符输出流 Writer ⼦类 FileWriter
6. 缓冲流
1. 提⾼读和写的速度
2. 字节输⼊流InputStream --->字节输⼊缓冲流 BufferedInputStream
3. 字节输出流OutputStream-->字节输出缓冲流 BufferedOutputStream
4. 字符输⼊流Reader --->字符输⼊缓冲流 BufferedReader
5. 字符输出流Writer---->字符输出缓冲流 BufferedWriter
7. 序列化和反序列化
1. 把对象转化为字节序列 >>> 把内存中的对象--通过序列化-- >流对象
2. 字节序列再还原成java对象 >>> 把流--通过反序列化-->内 存中的对象
3. 序列化的步骤
1. 实现 Serializable 接⼝
2. 创建对象输出流
3. 调⽤writerObject()⽅法将对象写⼊⽂件
4. 关闭流
4. 反序列化
1. 实现 Serializable 接⼝
2. 创建对象输⼊流
3. 调⽤readObject()⽅法读取对象
4. 关闭流