Recuperer les elements d'un fichier XML en vb.net

ladil007 Messages postés 5 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 9 mars 2009 - 8 janv. 2009 à 14:06
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 9 janv. 2009 à 09:38
Salut

je suis pas trop doué pour ce qui concerne la manipulation des fichiers XML en vb.net

bref

mon probleme le voila:

je veux recuperer les elements d'un fichier XML :


Exemple:






1

50


<vendor>text</vendor>




<order>

10

</order>



1-je veux recuperer l'element racine

2-je veux recuperer le(s) element(s) du noeud product (id, price, vendor)

3-je veux recuperer le(s) element (s) du noeud order(id)


bon j'ai pu faire un bout de code qui marche pas mal; mais le probleme
dans ce code c'est que je dois connaitre le nombre des elements que
j'ai


' creation d'une nouvelle instance du membre xmldocument

Dim XmlDoc As XmlDocument = New XmlDocument()

'Chargement du fichier XMl

XmlDoc.Load("chemin fichier xml")

'Declaration d'une liste de Noeud

Dim xmlnodeList As XmlNodeList


xmlnodeList = XmlDoc.ChildNodes


MsgBox(xmlnodeList.ItemOf(0).ChildNodes.ItemOf(0).Name)

MsgBox(xmlnodeList.ItemOf(0).ChildNodes.ItemOf(1).Name)


MsgBox(xmlnodeList.ItemOf(0).ChildNodes.ItemOf(0).ChildNodes.ItemOf(0).Name)

MsgBox(xmlnodeList.ItemOf(0).ChildNodes.ItemOf(0).ChildNodes.ItemOf(1).Name)

MsgBox(xmlnodeList.ItemOf(0).ChildNodes.ItemOf(0).ChildNodes.ItemOf(2).Name)


est ce qu'il existe un moyen pour regler ce prb ?

Merci d'avance

 

2 réponses

cs_fauve Messages postés 661 Date d'inscription vendredi 2 décembre 2005 Statut Membre Dernière intervention 23 mars 2011 8
8 janv. 2009 à 14:28
Salut,

En combinant de l'espace de nom System.IOReplace et Contains de la classe
String
, tu seras en mesure de pouvoir lire ce fichier et de récupérer les infos que tu souhaites...

++

Fauve


Pensez : Réponse Acceptée 
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
9 janv. 2009 à 09:38
Bonjour,

Suggestion, en reprenant ton code :

' creation d'une nouvelle instance du membre xmldocument
Dim XmlDoc As XmlDocument = New XmlDocument()
'Chargement du fichier XMl
XmlDoc.Load("chemin fichier xml")
'Declaration d'une liste de Noeud
Dim lNode As XmlNode

For each lNode in XmlDoc.DocumentElement
    Select case lNode.name
        Case "product"
            TraiteProduct(lNode)
        Case "order"
            TraiteOrder(lNode)

    End Select
Next

End Sub 'Ou function

Private Sub TraiteProduct(byval pNode as XmlNode)
 Et tu traite la balise product comme décrit un peu plus haut
End Sub

'De même avec TraiteOrder

0
Rejoignez-nous