从文件加载ArrayList
问题描述:
我刚刚将一个ArrayList保存到文件中。现在我想将它重新加载到我的程序中,并且它不起作用。这里是我的代码吧:从文件加载ArrayList
public void loadgame(){
try {
System.out.println("1");
FileInputStream prein = new FileInputStream("saved game.txt");
System.out.println("2");
ObjectInputStream in = new ObjectInputStream(prein);
System.out.println("3");
kortene = (ArrayList<Kort>)in.readObject();
System.out.println("4");
in.close();
本品系3后得到一个错误,错误是:
java.io.InvalidClassException: vendespil.Kort; local class incompatible: stream classdesc serialVersionUID = -8031146399228259151, local class serialVersionUID = -3342687010032791159
我的问题不在于如何做到这一点,但我刚刚做了其他人说过,但它不起作用,我的问题是,为什么我得到该错误,如果它因为我更改ArrayList之间保存和加载它,我的意思是,我不改变文件,但我试图加载它之前清除ArrayList。
答
看起来您已经对保存的对象进行了更改,并保存了对象并将它们读回。
我会说,清理并重新构建您的项目,并尝试使用新保存操作。不要读写
你真的应该Google错误信息。 – 2011-04-24 11:59:14
你做任何事情吗?首先你问[保存一个ArrayList到一个文件](http://stackoverflow.com/questions/5770198/saving-an-arraylist-to-a-file),现在相反。 – 2011-04-24 12:01:16