2010-12-06 39 views
4

一个属性名称有一个XML文件选择单节点与在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> 

我需要使用获得属性为context="General"元素的VBScript

我能得到这个说法顶级节点

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

但不知道如何扩展此。

任何帮助表示赞赏。

在此先感谢。

回答

6

要在任何节点上,您可以使用此

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

,或者专门为add节点

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

这是使用XPath,这可能需要您设置的选择命名空间属性DomDocument

xmlDocument.setProperty "SelectionLanguage", "XPath" 

您可能想要搜索XPath教程,例如as w3schools - New Link