gpt4 book ai didi

java - 我正在尝试制作一个程序,将对象保存到文件中,然后从文件中读取对象。我究竟做错了什么?

转载 作者:行者123 更新时间:2023-12-01 23:25:22 26 4
gpt4 key购买 nike

我认为它保存了对象,因为它生成了 .txt 文件,但是当我运行程序时,在输入输入后,它会输出“初始化流时出错”。我对 Java 和编码都很陌生,所以我只是想知道我做错了什么。

这是我运行代码时得到的结果:

“您想要什么类型的服装?

gorilla 套装

您想要什么类型的面膜?

gorilla "

这是你的衣服。

服装: gorilla 套装

面具: gorilla

初始化流时出错”

我希望对象的内容(“ gorilla 套装”和“ gorilla ”)最后一行输出,但它输出“初始化流时出错”。

这是运行者类:

class RunHalloween2
{
public static void main(String[] args)
{
Scanner Input = new Scanner(System.in);


Halloween outfit = new Halloween();

System.out.println("What type of costume do you want?");
outfit.setCostume(Input.nextLine());

System.out.println("What type of mask do you want?");
outfit.setMask(Input.nextLine());

System.out.println("");
System.out.println("This is your outfit.");
System.out.println("Costume: " + outfit.getCostume());
System.out.println("Mask: " + outfit.getMask());


try {
FileOutputStream f = new FileOutputStream(new File("myOutfit.txt"));
ObjectOutputStream o = new ObjectOutputStream(f);

// Write objects to file
o.writeObject(outfit);

o.close();
f.close();

FileInputStream fi = new FileInputStream(new File("myOutfit.txt"));
ObjectInputStream oi = new ObjectInputStream(fi);

// Read objects

outfit = (Halloween) oi.readObject();


System.out.println(outfit.toString());

oi.close();
fi.close();

} catch (FileNotFoundException e) {
System.out.println("File not found");
} catch (IOException e) {
System.out.println("Error initializing stream");
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

}

最佳答案

据我所知,可能有两个错误:-

1 - 您的文件名是 myOutfit.txt,但它应该是 myOutfit.ser

2 - 您的万圣节类未实现序列化。

public class Halloween implements java.io.Serializable

关于java - 我正在尝试制作一个程序,将对象保存到文件中,然后从文件中读取对象。我究竟做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58309398/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com