image.png
    对象字节输出流可以理解为一个高级的管道 高级的管道 () 要包含一些低级的管道 才能通向文件
    image.png
    image.png
    对象如果要序列化,必须实现Serializable 序列化接口
    image.png
    存储后的文件不是乱码(中文都在),
    image.png

    1. package com.itheima.d5_serializable;
    2. import java.io.FileOutputStream;
    3. import java.io.ObjectOutputStream;
    4. /**
    5. * 目标: 学会对象序列化, 使用ObjectOutputStream 把内存中的对象存入到硬盘文件中
    6. */
    7. public class ObjectOutputStreamDemo1 {
    8. public static void main(String[] args) throws Exception{
    9. // 1. 创建学生对象
    10. Student s = new Student("程磊","chenlei","123456",21);
    11. // 2. 对象序列化, 使用对象字节输出流包装字节输出流管道
    12. // 文件输出流是低级流 被对象字节输出流包装住, 文件输出流里面写路径(选择输出到哪)
    13. ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("io-app2/src/obj.txt"));
    14. // 3. 直接调用序列化方法
    15. oos.writeObject(s); // 先再该对象的类必须实现Serializable序列化接口
    16. // 4. 释放资源
    17. oos.close();
    18. System.out.println("序列化完成");
    19. }
    20. }