○ ○ 2023-09-17 11:10 采纳率: 66.7%
浏览 5

反序列化读取多个对象时强转报错是为什么

报错信息:

img

存储对象:

package IoSuper;

import java.io.*;
import java.util.ArrayList;
import java.util.Collections;

public class ObjectStreamDemo3 {
    public static void main(String[] args) throws IOException, ClassNotFoundException {
        ObjectOutputStream ob=new ObjectOutputStream(new FileOutputStream("D:\\JAVA\\HeiMa\\c\\objectStream.txt"));
        Student s1=new Student("zs",23);
        Student s2=new Student("ls",23);
        Student s3=new Student("ws",23);
        ArrayList<Student> list=new ArrayList<>();
        Collections.addAll(list,s1,s2,s3);
        for (Student student : list) {
            ob.writeObject(student);
        }
        ob.close();

    }
}


读取对象:


package IoSuper;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.util.ArrayList;

public class ObjectStreamDemo4 {
    public static void main(String[] args) throws IOException, ClassNotFoundException {
        ObjectInputStream ois=new ObjectInputStream(new FileInputStream("D:\\JAVA\\HeiMa\\c\\objectStream.txt"));
       ArrayList<Student> list1 = (ArrayList<Student>) ois.readObject();
        for (Student student : list1) {
            System.out.println(student.getName()+" "+student.getAge());
        }
        ois.close();
    }
}

JavaBean:

package IoSuper;

import java.io.Serializable;

public class Student implements Serializable {
    private static final long serialVersionUID = 393646513909202246L;
    private String name;
    private int age;

    public Student(){}
    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-09-17 14:31
    关注

    【相关推荐】




    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 9月17日

悬赏问题

  • ¥15 python怎么在已有视频文件后添加新帧
  • ¥20 虚幻UE引擎如何让多个同一个蓝图的NPC执行一样的动画,
  • ¥15 fluent里模拟降膜反应的UDF编写
  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵