2010-12-06 12 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> 

私はこの文

で最上位ノードを取得することができ、その属性のVBScript

を使用してcontext="General"ある要素を取得する必要があります

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

これを拡張する方法がわかりません。

何か助けていただければ幸いです。

ありがとうございます。

答えて

6

任意のノードを取得するには、これはの選択名前空間のプロパティを設定する必要がありXPathを、使用しているこの

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

または、特にaddノード用

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

を使用することができますあなたはこのような、XPathのチュートリアルを検索したい場合がありますDOMDOCUMENT

xmlDocument.setProperty "SelectionLanguage", "XPath" 

as w3schools - 新しいリンク