Java(序列化集合)

序列化集合

   /*
序列化集合
    在文件中保存多个对象,可以把多个对象存储到一个集合中,对集合进行序列化和反序列化
    分析:
        1.定义一个存储Person对象的ArrayList集合
        2.往ArrayList集合中存储Person对象
        3.创建一个序列化流ObjectOutputStream对象
        4.使用ObjectOutputStream对象中的方法writeObject,对集合进行序列化
        5.创建一个反序列化ObjectInputStream对象
        6.使用ObjectInputStream对象中的方法readObject读取文件中保存的集合
        7.把Object类型的集合转换为ArrayList类型
        8.遍历集合
        9.释放资源
     */
    public static void main(String[] args) throws IOException, ClassNotFoundException {
        //1.定义一个存储Person对象的ArrayList集合
        ArrayList<Persion> list = new ArrayList<>();
        //2.往ArrayList集合中存储Person对象
        list.add(new Persion("张三",18));
        list.add(new Persion("李四",19));
        list.add(new Persion("王五",17));
        //3.创建一个序列化流ObjectOutputStream对象
        ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("G:\\a.txt"));
        //4.使用ObjectOutputStream对象中的方法writeObject,对集合进行序列化
        oos.writeObject(list);
        //5.创建一个反序列化ObjectInputStream对象
        ObjectInputStream ois = new ObjectInputStream(new FileInputStream("G:\\a.txt"));
        //6.使用ObjectInputStream对象中的方法readObject读取文件中保存的集合
        Object o = ois.readObject();
        //7.把Object类型的集合转换为ArrayList类型
        ArrayList<Persion> list2=(ArrayList<Persion>)o;
        //8.遍历集合
        for (Persion p : list2) {
            System.out.println(p);
        }
        //9.释放资源
        ois.close();
        oos.close();

posted @ 2021-03-28 20:11  一名初学者  阅读(373)  评论(0)    收藏  举报