Sample code for 30+ languages & platforms
VB.NET

Demonstrate XML SearchForTag2

Demonstrates how to use SearchForTag2.

Chilkat VB.NET Downloads

VB.NET
Dim success As Boolean = 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 Integer = 0
Dim xmlSearch As Chilkat.Xml = xml.GetRoot()
Dim afterPtr As Chilkat.Xml = 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.
    Debug.WriteLine(i & ": " & xmlSearch.Content)
    pTemp = afterPtr
    afterPtr = xmlSearch
    pTemp.GetRoot2()
    xmlSearch = pTemp
End While




Debug.WriteLine("----")

' A better way:
Dim sbState As New Chilkat.StringBuilder
i = 0
While xml.NextInTraversal2(sbState) <> False
    If (xml.TagEquals("testchild1") = True) Then
        Debug.WriteLine(i & ": " & xml.Content)
        i = i + 1
    End If

End While
xml.GetRoot2()