cs_Draven
Messages postés62Date d'inscriptiondimanche 22 octobre 2000StatutMembreDernière intervention 8 octobre 2006
-
8 oct. 2006 à 12:14
cs_Draven
Messages postés62Date d'inscriptiondimanche 22 octobre 2000StatutMembreDernière intervention 8 octobre 2006
-
8 oct. 2006 à 23:17
Bonjour a tous,
J'aimerai filtrer un fichier xml en fonction d'un element de celui-ci. Pour comprendre rien de tel qu'un exemple.
Alors voila mon fichier xml.
<ville id="1" nom="Orly" ...>
</ville>
<ville id="2" nom="Bretigny sur Orge" ...>
</ville>
Et je ne voudrais garder que les aeroports possédant des éléments "avionMilitaire". Et avoir en resultat le fichier xml suivant :
<ville id="2" nom="Bretigny sur Orge" ...>
</ville>
J'ai regarder du coté des classes xpathdocument, et des méthodes selectnodes avec une requete xpath, mais je ne sélectionne que les noeuds demandé, je n'obtiens pas mon fichier xml voulu.
Avez vous une idée?
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 8 oct. 2006 à 12:28
Salut,
Basiquement, une fois que tu as la liste des éléments à conserver, il te suffit de batir un autre XmlDocument et de le sauvegarder.
L'autre solution est que tu prennes la logique inverse et que tu sélectionnes les aeroports ne correspondant pas au critère et de les supprimer du document actuel.
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 8 oct. 2006 à 12:38
Pour la requête XPath, elle est assez semblable à ce topic où j'avais donné une réponse...
En l'adaptant un peu, tu pourras arrivé au résultat que tu veux et créer un autre XMLDocument comme te le suggère coq.
cs_Draven
Messages postés62Date d'inscriptiondimanche 22 octobre 2000StatutMembreDernière intervention 8 octobre 2006 8 oct. 2006 à 17:03
Je vous remercie de vos réponses.
Ca fait plusieurs jours que je tourne en rond je n'arrive à avoir ce que je souhaite.
Je sélectionne bien mes noeuds souhaités, je vais m'inspiré de ta réponse Bidou. Donc Une fois que j'ai mon objet xmlnodelist renseigné, je ne sais pas quoi faire pour avoir mon fichier xml filtré.
Pouvez vous m'aider pour ça, car la je nage complètement?
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 201361 8 oct. 2006 à 17:44
Avoir les informations en mémoire te suffit pas?
Si non, soit tu crées un nouveau fichier xml et tu écris le contenu de tes Nodes dedans, soit tu conserves ton fichier xml et tu supprimes ce qu'il y a en trop (voire solution de coq).
<hr size="2" />VC# forever
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Draven
Messages postés62Date d'inscriptiondimanche 22 octobre 2000StatutMembreDernière intervention 8 octobre 2006 8 oct. 2006 à 20:38
Donc je renseigne mon xmlnodelist avec une requete xpath du genre /pays/ville/aeroport/avionMilitaire. Dans ce cas les noeuds recupérés dans mon xmlnodeslist seront avionMilitaires.
Apres ça, je crée un nouveau xmldocument par exemple et j'insere tous mes noeuds de mon xmlnodeslist.J'obtiendrai un fichier xml avec l'arborescence complète du noeud( c.a.d. tous les ancètres), ou juste les noeuds avionMilitaire?