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

Signaler
Messages postés
5
Date d'inscription
mardi 12 juin 2007
Statut
Membre
Dernière intervention
9 mars 2009
-
Messages postés
14773
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
7 mars 2021
-
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

Messages postés
661
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
23 mars 2011
8
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 
Messages postés
14773
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
7 mars 2021
151
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