立志成为黑客 2022-04-06 12:50 采纳率: 68.3%
浏览 171
已结题

Java反序列化为什么报错?请帮我看看

img


package com.a27序列化;

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

public class a01序列化 {
    public static void main(String[] args) throws IOException, ClassNotFoundException {
        对象序列化流();
        对象反序列化流();
    }
    public static void 对象序列化流() throws IOException, ClassNotFoundException {
        Student stu = new Student(1001,"方光曦","男","大三");
        Student stu1 = new Student(1002,"罗明星","女","大三");
        List<Student> a = new ArrayList<>();
        a.add(stu);
        a.add(stu1);
        ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("stu.txt",true));
        //将对象序列化到文件
        oos.writeObject(stu);
        oos.close();
    }
    public static void 对象反序列化流() {
        ObjectInputStream ois = null;
        try {
            ois = new ObjectInputStream(new FileInputStream("stu.txt"));
            Object obj=null;
            while ((obj=ois.readObject())!=null){
                Student stu = (Student) obj;
                System.out.println(stu.getId()+","+stu.getName()+","+stu.getGender()+","+stu.getGrade());
            }} catch (EOFException e) {
        }
        catch (Exception e) {
            e.printStackTrace();
        }finally {
            try {
                ois.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

package com.a27序列化;

import java.io.Serializable;

public class Student implements Serializable {
    private int id;
    private String name;
    private String gender;
    private String grade;

    public Student(int id, String name, String gender, String grade) {
        this.id = id;
        this.name = name;
        this.gender = gender;
        this.grade = grade;
    }

    public Student() {
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getGrade() {
        return grade;
    }

    public void setGrade(String grade) {
        this.grade = grade;
    }

    @Override
    public String toString() {
        return "Student{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", gender='" + gender + '\'' +
                ", grade='" + grade + '\'' +
                '}';
    }
}


  • 写回答

11条回答 默认 最新

  • zcl_1991 2022-04-06 13:19
    关注
    获得0.65元问题酬金
    评论

报告相同问题?

问题事件

  • 系统已结题 4月14日
  • 创建了问题 4月6日

悬赏问题

  • ¥15 is not in the mmseg::model registry。报错,模型注册表找不到自定义模块。
  • ¥15 安装quartus II18.1时弹出此error,怎么解决?
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音
  • ¥30 Pytorch深度学习服务器跑不通问题解决?
  • ¥15 部分客户订单定位有误的问题
  • ¥15 如何在maya程序中利用python编写领子和褶裥的模型的方法
  • ¥15 Bug traq 数据包 大概什么价
  • ¥15 在anaconda上pytorch和paddle paddle下载报错
  • ¥25 自动填写QQ腾讯文档收集表