2010-12-06 26 views
4

Vous avez déjà un fichier xmlChoisir un seul nœud avec un nom d'attribut dans vbscript

<DataSource> 
    <localdata> 
     <add context="Localization"> 
      <parameter name="timeout" type="int" defaultvalue="60"/> 
      <parameter name="address" type="string" defaultvalue="192.168.9.45" /> 
      <parameter name="port" type="int" defaultvalue="6789"/> 
     </add> 
     <add context="General"> 
      <parameter name="timeout" type="int" defaultvalue="60"/> 
      <parameter name="address" type="string" defaultvalue="192.168.9.478" /> 
      <parameter name="port" type="int" defaultvalue="5674"/> 
     </add> 
    </localdata> 
    </DataSource> 

Je dois obtenir l'élément dont l'attribut est context="General" en utilisant vbscript

je peux obtenir le nœud supérieur avec cette déclaration

Set xmlDoc = CreateObject("Msxml2.DOMDocument") 
xmlDoc.load("DataConfiguration.xml") 
Set queryNode = xmlDocument.selectSingleNode(".//localdata") 

Mais vous ne savez pas comment l'étendre.

Toute aide est appréciée.

Merci d'avance.

Répondre

6

Pour obtenir un nœud, vous pouvez utiliser cette

Set queryNode = xmlDocument.selectSingleNode(".//node()[@context = 'General']") 

ou, en particulier pour le noeud add

Set queryNode = xmlDocument.selectSingleNode(".//add[@context = 'General']") 

Ce utilise XPath, qui peut vous obliger à définir la propriété d'espace de noms de sélection de le DomDocument

xmlDocument.setProperty "SelectionLanguage", "XPath" 

Vous pourriez vouloir chercher un tutoriel XPath, tel que comme w3schools - Nouveau lien