Bonjour,
J'aimerais savoir comment ajouter plusieurs données dans un fichier xml sans écraser le contenu.J'ai essayé d'ajouter "true" en faisant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
XMLEncoder enc = new XMLEncoder(new FileOutputStream("fichier.xml",true));
Mais quand j'ouvre le fichier xml,j'ai l'erreur suivante:

La page XML ne peut pas être affichée
Impossible d'afficher l'entrée XML en utilisant la feuille de style XSL. Corrigez l'erreur, puis cliquez sur le bouton Actualiser ou réessayez ultérieurement.


--------------------------------------------------------------------------------

Un seul élément de niveau supérieur est autorisé dans un document XML. Erreur de traitement de la ressource file:///D:/work...

<java version="1.6.0_17" class="java.beans.XMLDecoder">
-^

Je ne sais pas comment faire.Sinon voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
public void actionPerformed(ActionEvent ev) {
 
 
		if(ev.getSource().equals(boutonOk)){
			Etudiant etud=new Etudiant();
 
		int		id = Integer.parseInt(jtNum.getText());				
			try {
 
				etud.setNum(id);			
				etud.setNom(jtNom.getText());
				etud.setPrenom(jtPrenom.getText());
 
 
				XMLEncoder enc = new XMLEncoder(new FileOutputStream("fichier.xml",true));
				enc.writeObject(etud);
				enc.flush();
				enc.close();
 
				   JOptionPane.showMessageDialog(null,"Sauvegarde réussie!");
				   jtNum.setText(null);
				   jtNom.setText(null);
				   jtPrenom.setText(null);
			} catch (Exception e) {
 
				 JOptionPane.showMessageDialog(null,"Sauvegarde non réussie!");
			}
		}
 
		if(ev.getSource().equals(boutonAfficher)){
 
 
 
			try {
 
 
				XMLDecoder dec = new XMLDecoder(new FileInputStream("fichier.xml"));
 
			    Etudiant etud= (Etudiant)dec.readObject();
			    dec.close();
 
 
				String a = Integer.toString(etud.getNum());
 
				jtNum.setText(a);
				jtNom.setText(etud.getNom());
				jtPrenom.setText(etud.getPrenom());
 
 
			} catch (Exception e) {
				 JOptionPane.showMessageDialog(null,"Impossible d'afficher!");
			}