Bonjour,
J'ai plusieurs fichier XML qui sont de la structure suivante
Pour charger ce fichier afin de pouvoir le parcourir, j'effectue les opérations suivantes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <?xml version="1.0" encoding="utf-8" ?> <sub-domain category="01A"> <category ID="01A01"> <name ID="01A01">du texte</name> <name ID="01A01-01">du texte</name> <name ID="01A01-02">du texte</name> <name ID="01A01-03">du texte</name> <name ID="01A01-04">du texte</name> <name ID="01A01-05">du texte</name> </category> <category ID="01A02"> <name ID="01A02">du texte</name> <name ID="01A02-01">du texte</name> </category>
J'ai regardé dans la doc, et je sais qu'il faut utiliser un XPathNavigator pour pouvoir effectuer une itération sur des données au formats XML, mais je n'arrive pas à utiliser l'itérateur que j'ai créer pour prendre les childnotes et récupérer leur valeurs :/
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 String xmlFile = "./areas/" + selDomain + "/" + selSubDomain + ".xml"; xmldoc = new XmlDocument(); xmldoc.Load(Server.MapPath(xmlFile)); XPathNavigator xmlNav; XmlNodeList xmlnode = xmldoc.GetElementsByTagName("category"); //the list coutaining sub items in "category" node (with size = total of all "category" nodes ArrayList [][] xmlItems = new ArrayList[xmlnode.Count][]; //Page.FindControl("form1").Controls.Add(gdView); displaytexte = "<br />"; for (int i = 0; i < xmlItems.Length; i++) { foreach (XmlNode currentXMLNode in xmlnode.Item(i).ChildNodes) { xmlNav = currentXMLNode.CreateNavigator(); while (xmlNav.HasChildren) { //du code: je suis bloqué juste à l'étape au dessus :/; } } }
Si quelqu'un pourrait m'aider avec XPath, merci bien !
L.
Partager