Modification des donnes xml
salut,
mon but est comment acceder à une valeur dans le fichier test.xml pour modifier une valeur,
le fichier test.xml est :
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
| <?xml version="1.0" encoding="UTF-8"?>
<groupes>
<groupe>
<numero>99999999<numero>
<identifiant>001</identifiant>
<socite>
<type>marketing</type>
<local>Parix</local>
</socite>
<socite>
<type>Gestion</type>
<local>nework</local>
</socite>
</groupe>
<groupe>
<numero>77777777<numero>
<identifiant>002</identifiant>
<socite>
<type>Developpement</type>
<local>Almend</local>
</socite>
<socite>
<type>Maintenace</type>
<local>Berline</local>
</socite>
</groupe>
</groupes> |
mon but est de modifier le local de la societe qui a comme type :"marketing" et rendre leur local : CHINA
donc cette societe au lieu d'avoir le local "Parix " elle doit avoir "CHINA"
j'arrive a modifier des donnes dans ce fichier (tes.xml) à travers une classe java :
mais le problème est que j'arrive à modifier par exemple le numero de groupe :
par exemple modification de groupe qui a l'identifiant "001" et rendre on numero "33333333"
le code java qui realise ca est :
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 34 35 36 37
|
String ident="001"
String nouveaunumero="33333333";
SAXBuilder sxb=new SAXBuilder();
Document document = null;
document = sxb.build(new File("test.xml"));
Element groupes=document.getRootElement();
List<Element> en=groupes.getChildren();
for(Element groupe:en){
String loc=groupe.getChild("identifiant").getText();
if(loc.equals(ident)){
groupe.getChild("numero").setText(nouveaunumero);
}
XMLOutputter xmlOutput= new XMLOutputter(Format.getPrettyFormat());
xmlOutput.output(document, new FileOutputStream("test.xml"));
} |
et à travers ce code j'arrive à modifier des donneés dans le fichier test.xml
mais si on revient au but initiale c'est de modifier le local de la societe qui a comme type :"marketing" et rendre leur local : CHINA
comme vous voyer le groupe a aussi une liste de societe
SVP avec le même code (bien sur avec une petite modification ) juste comment accéder a la societe qui est dans le groupe
pour modifier son local (bien sur la modification touche juste le : la societe qui a comme type :"marketing")
avec deux variable
typeanc="marketing";
nouvLoca="CHINA";
et parser bien sur le fichier de la même manière et faire le test nécessaire
est ce que quelqu'un pouvez m'aidez
merci d'avance