• 对象操作流


    该流可以将一个对象写出, 或者读取一个对象到程序中. 也就是执行了序列化和反序列化的操作.

    ObjectOutputStream new ObjectOutputStream(OutputStream), writeObject() 
    
    public class Demo3_ObjectOutputStream {
    
      public static void main(String[] args) throws IOException {
    
        Person p1 = new Person("张三", 23);
    
        Person p2 = new Person("李四", 24);
    
        ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("e.txt"));//创建对象输出流
    
        oos.writeObject(p1);
    
        oos.writeObject(p2);
    
        oos.close();
    
      } 
    
    }
    

     ObjectInputStream

     new ObjectInputStream(InputStream), readObject()

    public class Demo3_ObjectInputStream {
    
      public static void main(String[] args) throws IOException, ClassNotFoundException {
    
        ObjectInputStream ois = new ObjectInputStream(new FileInputStream("e.txt"));
    
        Person p1 = (Person) ois.readObject();
    
        Person p2 = (Person) ois.readObject();
    
        System.out.println(p1);
    
        System.out.println(p2);
    
        ois.close();
    
      } 
    
    }
    

     对象操作流优化

    Person p1 = new Person("张三", 23);
    
    Person p2 = new Person("李四", 24);
    
    Person p3 = new Person("马哥", 18);
    
    Person p4 = new Person("辉哥", 20);
    
    ArrayList<Person> list = new ArrayList<>();
    
    list.add(p1);
    
    list.add(p2);
    
    list.add(p3);
    
    list.add(p4);
    
    ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("f.txt"));
    
    oos.writeObject(list); //写出集合对象
    
    oos.close();
    
  • 相关阅读:
    Java中使用Base64编码URL
    JSON Web Token (JWT)入门学习
    1047. 删除字符串中的所有相邻重复项
    1021. 删除最外层的括号
    使用shell获取随机端口<帮你解决端口的占用烦恼>
    初始化一个vue项目并生成完整的目录结构
    mysql-常用字符函数
    设计模式-单例模式-饿汉和懒汉
    Java-指令的重排序
    Java-反射类加载到内存分析
  • 原文地址:https://www.cnblogs.com/loaderman/p/6407730.html
Copyright © 2020-2023  润新知