Lecture d'un fichier xml facilement

Contenu du snippet

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]) ;)

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.