SelectSingleNode syntaxe [Résolu]

cs_CharlEm 39 Messages postés mercredi 8 décembre 2004Date d'inscription 28 janvier 2009 Dernière intervention - 10 juil. 2008 à 14:14 - Dernière réponse : cs_CharlEm 39 Messages postés mercredi 8 décembre 2004Date d'inscription 28 janvier 2009 Dernière intervention
- 11 juil. 2008 à 11:16
Bonjour,

Je débute avec l'XML en VB6 donc ma question va surement vous sembler bien simple ... à moi non

Récupérer une collection c'est ok mais récupéré juste un seul noeud je fais comment ?
Ce qui m'intéresse c'est de récupérer le libellé de la rule S1001 (cf fichier xml ci dessous).

Merci d'avance pour vos lumières

Pour le moment j'ai fais ceci :

    Open App.Path & "\Controle.xml" For Input As #1
    fichierxml = input(LOF(1), 1)
    xmlconfig.loadXML (fichierxml)    Set xmlnode xmlconfig.selectSingleNode("//rules[nom 'S1001']/libelle") ==> ça marche pas
    MsgBox xmlnode.Text

J'ai un fichier XML qui ressemble à ceci :

<?xml version="1.0" encoding="ISO-8859-1"?>
<rules>
 <rule id="S1000">
  <nom>S1000</nom>
  <module>HOSPITAL</module>
  <libelle>Le fichier HOSPITAL est introuvable</libelle>
 </rule>
 <rule id="S1001">
  <nom>S1001</nom>
  <module>HOSPITAL</module>
  <libelle>Le numéro d'agrément est vide</libelle>
 </rule>
</rules>
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 11 juil. 2008 à 07:09
3
Merci
normal, pas de noeud nommé rules, qui ne possède un seul attribut nom

de tête, ce serait plutot du genre :

//rules/rule[@id='S1001']/libelle

descendre l'arborescence, quoi...
mais a tester et corriger, j'ai pas forcement la syntaxe exacte en tête
Renfield
Admin CodeS-SourceS- MVP Visual Basic

Merci Renfield 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 81 internautes ce mois-ci

Commenter la réponse de Renfield
cs_CharlEm 39 Messages postés mercredi 8 décembre 2004Date d'inscription 28 janvier 2009 Dernière intervention - 11 juil. 2008 à 11:16
0
Merci
C'est exactement ça merci beaucoup.

J'ai juste du changer dans mon fichier XML les "..." par des '...' au niveau de <rule id='S1000'>
Commenter la réponse de cs_CharlEm

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.