VBScript
VBScript
Demonstrate XML SearchForTag2
Demonstrates how to use SearchForTag2.Chilkat VBScript Downloads
Dim fso, outFile
Set fso = CreateObject("Scripting.FileSystemObject")
'Create a Unicode (utf-16) output text file.
Set outFile = fso.CreateTextFile("output.txt", True, True)
success = 0
set xml = CreateObject("Chilkat.Xml")
' Load the following XML:
' <Test>
' <testchild1>
' test
' </testchild1>
' <testchild1>
' test1
' </testchild1>
' <testchild1>
' test2
' </testchild1>
' <testchild1>
' test3
' </testchild1>
' <testchild1>
' test4
' </testchild1>
' <testchild1>
' test5
' </testchild1>
' <testchild1>
' test6
' </testchild1>
' </Test>
success = xml.LoadXml("<Test><testchild1>test</testchild1><testchild1>test1</testchild1><testchild1>test2</testchild1><testchild1>test3</testchild1><testchild1>test4</testchild1><testchild1>test5</testchild1><testchild1>test6</testchild1></Test>")
i = 0
' xmlSearch is a Chilkat.Xml
Set xmlSearch = xml.GetRoot()
' afterPtr is a Chilkat.Xml
Set afterPtr = xml.GetRoot()
' Alway begin the search from the root.
Do While xmlSearch.SearchForTag2(afterPtr,"testchild1")
' If successful, xmlSearch now points to the found element.
i = i + 1
' Set afterPtr = xmlSearch (so we find the next match after the one we just found)
' Rest xmlSearch to the root of the XML tree to be searched.
outFile.WriteLine(i & ": " & xmlSearch.Content)
' pTemp is a Chilkat.Xml
Set pTemp = afterPtr
' afterPtr is a Chilkat.Xml
Set afterPtr = xmlSearch
pTemp.GetRoot2
' xmlSearch is a Chilkat.Xml
Set xmlSearch = pTemp
Loop
outFile.WriteLine("----")
' A better way:
set sbState = CreateObject("Chilkat.StringBuilder")
i = 0
Do While xml.NextInTraversal2(sbState) <> 0
If (xml.TagEquals("testchild1") = 1) Then
outFile.WriteLine(i & ": " & xml.Content)
i = i + 1
End If
Loop
xml.GetRoot2
outFile.Close