Problème de déserialisation
Bonjour,
j'ai un fichier XML que je souhaiterais désérialiser pour effectuer des traitements sur les objets puis les re-sérialiser par la suite. Je m'interesse pour le moment à la deserialisation/serialisation avec XStream. Un exemple de fichier XML :
Code:
1 2 3
| <criteria author="Moi">
<active>true</active>
</criteria> |
Voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| public class Deserialisation {
public static void main(String[] args) {
try {
// Instanciation de la classe XStream
XStream xstream = new XStream(new DomDriver());
//Fichier à Deserialiser
FileInputStream fis = new FileInputStream(new File("c:/fichier1.xml"));
// Fichier re-serialiser
File fichier = new File("c:/fichier2.xml");
FileOutputStream fos = new FileOutputStream(fichier);
try {
// Désérialisation
Criteria nouveauCritere = (Criteria) xstream.fromXML(fis);
// Serialisation
xstream.toXML(nouveauCritere, fos);
} finally {
fis.close();
fos.close();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
} |
Résultat après re-sérialisation :
Code:
1 2 3
| <criteria>
<active>true</active>
</criteria> |
Comment faire pour stocker les attributs (notamment ici "author") lors de la désérialisation afin de les toujours les avoir lors de la re-sérialisation ?
Merci de vos réponses !