2016-11-24 1 views
0

C'est une question générale que j'essaie de traiter. J'avais l'habitude de programmer en java et juste pour implémenter l'interface serializable.io dans ma classe sysData à l'intérieur de mon package model et ensuite dans la vue Package je chercherais simplement un fichier ".ser" et chargerais ou enregistrerais dans ça. Mais maintenant, je veux que certaines de mes classes soient sauvegardées dans un fichier ".ser" et les autres dans un autre fichier ".ser" séparé et je n'arrive pas à trouver un moyen de le comprendre. Je serais reconnaissant si quelqu'un peut m'indiquer sur le concept de comment enregistrer certains objets dans un fichier ".ser" et l'autre masse d'objets dans un fichier ".ser" différent.Comment puis-je sérialiser des objets d'une application Java dans plusieurs fichiers?

Merci,

Tom

+0

peut-être vous donnera une idée http://stackoverflow.com/questions/3470138/writing-many-java-objects-to-a-single-file – Zia

+0

À moins que la sérialisation Java ne soit requise, une autre sérialisation le format peut valoir la peine d'être examiné. Le processus sera similaire dans les deux cas: ouvrez un sérialiseur différent en utilisant un flux de sortie différent et écrivez le graphe d'objet donné dans le sérialiseur approprié. Essayer de traiter le flux sérialisé lui-même ne sera pas amusant. – user2864740

+0

Nous avons une bonne expérience en utilisant [XStream] (http://x-stream.github.io/) au lieu de la sérialisation vanille. – cheffe

Répondre

0

L'interface java.io.Serializable vous permet d'enregistrer votre objet de données à un flux de données. Ce flux peut être un fichier ou un autre formulaire de stockage persistant ou même l'envoyer sur le réseau. Toutes les classes que vous souhaitez stocker mettent en œuvre l'interface Serializable

Ensuite, utilisez une sorte de mappage qui sait quelle classe/objet doit être enregistré dans quel fichier.

Par exemple,

A.class = A.ser 
B.class = B.ser 
C.class = C.ser 
... and so on ... 

Utilisez cette option pour enregistrer et charger des données entre la machine virtuelle Java et le système de fichiers.

Espérons que cela aide!