[AJUDA] Ler objectos de ficheiros para ArrayList

1 resposta
N

Boa noite!

Eu estou a tentar escrever no meu ArrayList os objectos que estão guardados num ficheiro .dat mas tenho este grande erro:

run:

Exception in thread main java.io.InvalidClassException: JogoSequencias.Base.Jogo; local class incompatible: stream classdesc serialVersionUID = 594955039495526892, local class serialVersionUID = -5083126069198387361

at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)

at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)

at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)

at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)

at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)

at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)

at java.util.ArrayList.readObject(ArrayList.java:593)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)

at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:974)

at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1848)

at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752)

at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)

at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)

at JogoSequencias.Base.Jogo.carregarJogos(Jogo.java:118)

at JogoSequencias.Interface.Main.main(Main.java:19)

Java Result: 1

BUILD SUCCESSFUL (total time: 0 seconds)

O meu Código é este:

public static void loadGames() throws IOException, ClassNotFoundException{ JG.clear(); ObjectInputStream entrada = new ObjectInputStream(new FileInputStream("game.dat")); JG = (ArrayList<Game>) entrada.readObject();//o erro está nesta linha entrada.close(); }

Alguém me pode ajudar?
Obrigado pela atenção.
Cumprimentos

1 Resposta

claudneto

http://download.oracle.com/javase/1.4.2/docs/api/java/io/ObjectInputStream.html#readObject()

InvalidClassException - Something is wrong with a class used by serialization.

Criado 12 de maio de 2011
Ultima resposta 12 de mai. de 2011
Respostas 1
Participantes 2