-3
我要解析和XML XML具有以下結構:解析使用VBScript
<?xml version="1.0" encoding="utf-8"?>
<UserConfig>
<add key="key1" value="value1" />
<add key="key2" value="value2" />
</UserConfig>
我要解析和XML XML具有以下結構:解析使用VBScript
<?xml version="1.0" encoding="utf-8"?>
<UserConfig>
<add key="key1" value="value1" />
<add key="key2" value="value2" />
</UserConfig>
爲了讓您一開始我結合了兩個答案this question:
Option Explicit
Dim oFS : Set oFS = CreateObject("Scripting.FileSystemObject")
Dim sFSpec : sFSpec = oFS.GetAbsolutePathName(".\44567515.xml")
Dim oXML : Set oXML = CreateObject("Msxml2.DOMDocument.6.0")
oXML.load sFSpec
If 0 = oXML.parseError Then
recursiveTraversal oXML.documentElement, 0
WScript.Echo "------------"
Dim sXPath : sXPath = "//add[@key='key2']"
Dim nodes : Set nodes = oXML.selectNodes(sXPath)
If 0 = nodes.length Then
WScript.Echo "no nodes for", sXPath
Else
WScript.Echo nodes(0).nodeName
WScript.Echo nodes(0).getAttribute("value")
End If
Else
WScript.Echo objMSXML.parseError.reason
End If
Sub recursiveTraversal(oElm, nIndent)
WScript.Echo Space(nIndent), oElm.tagName
If 0 < oElm.childNodes.length Then
Dim oChild
For Each oChild In oElm.childNodes
recursiveTraversal oChild, nIndent + 2
Next
Else
If 0 < oElm.attributes.length Then
Dim oAttr
For Each oAttr In oElm.attributes
WScript.Echo Space(nIndent + 1), oAttr.name, oAttr.value
Next
End If
End If
End Sub
輸出:
cscript 44567515.vbs
UserConfig
add
key key1
value value1
add
key key2
value value2
------------
add
value2
謝謝@ Ekkehard.Horner--幫助。雖然我發現我只是在尋找node.getAttribute()方法,但無法正確使用它 - 我的不好。你的迴應也非常有幫助。 :) –
您是否注意到此頁面右側的「相關」列?你有沒有做過任何研究? –
你試過了什麼? –
我試過尋找一些解析解決方案。無法找到任何與我期望分析的xml相關的東西。 –