Visual basic et lecture d'un fichier XML
j'essaie désespérément de lire dans un fichier XML
le code VB :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
' ----------------------------------------
' déclaration des variables locales
' ----------------------------------------
Dim monDocumentXML As New DOMDocument
Dim mesNoeuds As IXMLDOMNodeList
Dim unElement As IXMLDOMNode
' chargement du document xml
monDocumentXML.Load (principale_form.boite_dialogue.FileName)
MsgBox (principale_form.boite_dialogue.FileName)
' noeuds eleve
Set mesNoeuds = monDocumentXML.SelectSingleNode("NUM")
MsgBox (mesNoeuds.Length)
' chargement de chaque eleve
For Each unElement In mesNoeuds
' parcours la totalité d'eleve pour récupérer les valeurs
MsgBox ("test")
MsgBox (unElement.Text)
Next |
et la structure du fichier XML :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
<?xml version='1.0' encoding='iso-8859-1'?>
<!DOCTYPE master SYSTEM 'etudiant.dtd'>
<master>
<eleve>
<NUN>1</NUN>
<Nom>mouton</Nom>
<Prénom>moute</Prénom>
<Age>2</Age>
<Numéro></Numéro>
<Suffixe></Suffixe>
<TypeVoie></TypeVoie>
<LibelléVoie></LibelléVoie>
<Adresse></Adresse>
<CodePostal></CodePostal>
<NomCommune></NomCommune>
<X></X>
<Y></Y>
</eleve>
<eleve>
<NUN>2</NUN>
<Nom>brebis</Nom>
<Prénom>moutone</Prénom>
<Age>5</Age>
<Numéro></Numéro>
<Suffixe></Suffixe>
<TypeVoie></TypeVoie>
<LibelléVoie></LibelléVoie>
<Adresse></Adresse>
<CodePostal></CodePostal>
<NomCommune></NomCommune>
<X></X>
<Y></Y>
</eleve>
</master> |
le problème c'est que l'exécution de ce code est vraiment bizarre. tout d'abord il n'y a aucune erreur et il exécute bien tout le code (j'ai mis différentes trace avec des msgbox) mais il n'exécute pas les msgbox ou il fait réfférence à des noeuds ( --> MsgBox (mesNoeuds.Length) et MsgBox (unElement.Text)) mais il rentre bien dans la boucle puisqu'il affiche le MsgBox ("test")
donc là je comprends vraiment pas pourquoi il me zappe une partie de mon code 8O
si vous avez une idée je suis preneur !