Xojo Plugin
Xojo Plugin
Demonstrate XML SearchForTag2
Demonstrates how to use SearchForTag2.Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
Dim xml As New 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>")
Dim i As Int32
i = 0
Dim xmlSearch As Chilkat.Xml
xmlSearch = xml.GetRoot()
Dim afterPtr As Chilkat.Xml
afterPtr = xml.GetRoot()
Dim pTemp As Chilkat.Xml
// Alway begin the search from the root.
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.
System.DebugLog(Str(i) + ": " + xmlSearch.Content)
pTemp = afterPtr
afterPtr = xmlSearch
pTemp.GetRoot2
xmlSearch = pTemp
Wend
System.DebugLog("----")
// A better way:
Dim sbState As New Chilkat.StringBuilder
i = 0
While xml.NextInTraversal2(sbState) <> False
If (xml.TagEquals("testchild1") = True) Then
System.DebugLog(Str(i) + ": " + xml.Content)
i = i + 1
End If
Wend
xml.GetRoot2