Dé-sérialisation d'objets à partir d'un fichier en Java
J'ai un fichier qui contient plusieurs objets sérialisés de classe XYZ. Lors de la sérialisation, la chaque XYZ objet a été ajouté au fichier.
Maintenant, j'ai besoin de lire chaque objet du fichier, et je suis capable de lire seulement le premier objet.
Aucune idée de comment je peut lire chaque objet à partir du fichier et, éventuellement, de le stocker dans une Liste?
Pourriez-vous nous fournir un extrait de code qui illustrent le problème?
Binaire ou la sérialisation XML?
Ont été les objets de tous les écrits en une seule session (avec un seul
Binaire ou la sérialisation XML?
Ont été les objets de tous les écrits en une seule session (avec un seul
ObjectOutputStream
exemple), ou il ya plusieurs séances (la création, l'utilisation et la fermeture d'un ObjectOutputStream
pour chacun)?OriginalL'auteur topgun_ivard | 2011-10-19
Vous devez vous connecter pour publier un commentaire.
Essayez ce qui suit:
Suite sur tom's brillant commentaire, la solution pour plusieurs
ObjectOutputStream
s serait,Cela fonctionnera si les objets ont été écrits avec un seul
ObjectOutputStream
. Si plusieursObjectOutputStream
s ont été utilisés pour écrire dans le même fichier dans la succession, il ne sera pas.bien repéré 🙂 Oui, déjà corrigé, merci!
tellement vrai... eh Bien, fixe.
Nous n'avons pas fait de savoir que les objets ont été écrits séparément. Votre première réponse pourrait être tout à fait correct!
OriginalL'auteur alf
Vous ne pouvez pas ajouter ObjectOutputStreams à un fichier. Ils contiennent des en-têtes ainsi que les objets que vous avez écrit. Réviser votre technique.
Également votre EOF détection est faux. Vous devez attraper EOFException séparément. OptionalDataException signifie quelque chose de différent totalement.
OriginalL'auteur user207421
cela fonctionne pour moi
OriginalL'auteur Code Girl
Vous pouvez suivre l'mentionnées ci-dessous code pour la gestion de fin de fichier différemment:
Il va écrire et de lire des multiples entiers d'objets à partir d'un fichier sans jeter de l'exception.
OriginalL'auteur Krutik