Je rédige cet article en complément de l'article de piep14:
http://www.csharpfr.com/code.aspx?ID=31473
Etape1 : déclarer un fichier XML
Etape2 : charger ce fichier
Etape3 : déplacement rapide dans ce fichier XML
Source / Exemple :
//Create the XmlDocument
XmlDocument doc = new XmlDocument();
doc.Load("C:\\.......\\nomfichier.xml") ;
// Read the XmlDocument (Directory Node)
XmlNodeList elemList = doc.GetElementsByTagName("Directory") ;
for (int i=0 ; i<elemList.Count ; i++)
{
XmlNodeList eltList = elemList[i].ChildNodes ;
for (int j=0 ; j<eltList.Count ; j++)
{
directory = eltList[j].InnerXml ;
}
}
// Read the XmlDocument (Plate Node)
XmlNodeList elemList3 = doc.GetElementsByTagName("Plate") ;
for (int i=0 ; i<elemList3.Count ; i++)
{
XmlNodeList eltList3 = elemList3[i].ChildNodes ;
for (int j=0 ; j<eltList3.Count ; j++)
{
valeur[j] = int.Parse(eltList3[j].InnerXml) ;
listBox1.Items.Add("Zone " + (j+1) + ": " + valeur[j]) ;
}
}
Conclusion :
Directory Node:
XmlNodeList elemList = doc.GetElementsByTagName("Directory") ; //permet d'aller directement au noeud nommé "Directory"
elemList.Count //permet de prendre l'intégralité des valeurs (ici je n'ai qu'une string "directory")
Plate Node:
eltList3.Count //permet de prendre l'intégralité des valeurs (ici j'ai environ une dizaine de valeurs)
donc à chaque passage dans la boucle, le (eltList3[j].InnerXml) récupère la valeur et la met dans le tableau (valeur[j]).
Ensuite j'ai affiché ces valeurs dans une listeBox: (listBox1.Items.Add("Zone " + (j+1) + ": " + valeur[j]) ;)