Java Sérialisation Personnalisée

J'ai un objet qui contient un peu de unserializable champs que je veux pour sérialiser. Ils sont d'un autre API que je ne peux pas changer, afin de faire Sérialisables n'est pas une option. Le principal problème est l'Emplacement de la classe. Il contient quatre choses qui peuvent être sérialisé que j'avais besoin, tous les services de renseignements. Comment puis-je utiliser la lecture/writeObject pour créer une sérialisation personnalisée méthode qui peut faire quelque chose comme ceci:

//writeObject:
List<Integer> loc = new ArrayList<Integer>();
loc.add(location.x);
loc.add(location.y);
loc.add(location.z);
loc.add(location.uid);
//... serialization code

//readObject:
List<Integer> loc = deserialize(); //Replace with real deserialization
location = new Location(loc.get(0), loc.get(1), loc.get(2), loc.get(3));
//... more code

Comment puis-je faire cela?

  • veuillez noter qu'il est préférable d'accepter la meilleure réponse et non pas le premier correcte. vous l'avez dit vous-même que la réponse de peter lawrey peut-être mieux. pour le bien de tous les gens de venir ici, dans l'avenir, la recherche de la meilleure réponse: veuillez envisager d'accepter une réponse différente!
InformationsquelleAutor Alexis King | 2011-09-03