Bonjour,
J'ai un petit soucis.
Voilà, j'ai écrit un code pour supprimer des éléments dans un fichier xml déjà créé.
Exemple de xml :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
<eleves>
    <nom>Dupont</nom>
    <prenom<bernard</prenom>
</eleves>
<eleves>
    <nom>martin</nom>
   <prenom> julie</prenom>
</eleves>
Par exemple, si je ne veux supprimer que le premier nom (avec dupont), mon code me supprimer dupont ET martin....

Voilà 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
53
54
55
56
57
58
59
 
 
public class testSuppr
{
   static org.jdom.Document document;
   static Element racine;
 
   public static void main(String[] args)
   {
       try
       {
          lireFichier("G:\\testeur.xml");
          supprElement("intitule");
          enregistreFichier("G:\\testeur.xml");
        }
        catch(Exception e){}
   }
 
   //On parse le fichier et on initialise la racine de
   //notre arborescence
   static void lireFichier(String fichier) throws Exception
   {
      SAXBuilder sxb = new SAXBuilder();
      document = sxb.build(new File(fichier));
      racine = document.getRootElement();
   }
 
   //On fait des modifications sur un Element
   static void supprElement(String element)
   {
      //Dans un premier temps on liste tous les types
      List listType = racine.getChildren("type");
      Iterator i = listType.iterator();
      //On parcours la liste grâce à un iterator
      while(i.hasNext())
      {
         Element courant = (Element)i.next();
         //Si le type possède une valeur, on applique la modification
         if(courant.getChild(element)!=null)
         {
            //On supprime l'Element en question
            courant.removeChild(element);
            //On renomme l'Element père sachant qu'une balise XML n'accepte
            //ni les espaces ni les caractères spéciaux
            //"type modifié" devient "type_modifie"
            courant.setName("type_modifie");
         }
      }
   }
 
   //On enregsitre notre nouvelle arborescence dans le fichier
   //d'origine dans un format classique.
   static void enregistreFichier(String fichier) throws Exception
   {
         XMLOutputter sortie = new XMLOutputter(Format.getPrettyFormat());
         sortie.output(document, new FileOutputStream("G:\\testeur.xml"));
 
   }
}
Comment je fais si je ne veux supprimer que le premier