Chilkat • HOME • Android™ • Classic ASP • C • C++ • C# • Mono C# • .NET Core C# • C# UWP/WinRT • DataFlex • Delphi ActiveX • Delphi DLL • Visual FoxPro • Java • Lianja • MFC • Objective-C • Perl • PHP ActiveX • PHP Extension • PowerBuilder • PowerShell • PureBasic • CkPython • Chilkat2-Python • Ruby • SQL Server • Swift 2 • Swift 3,4,5... • Tcl • Unicode C • Unicode C++ • Visual Basic 6.0 • VB.NET • VB.NET UWP/WinRT • VBScript • Xojo Plugin • Node.js • Excel • Go
(VB.NET UWP/WinRT) Iterate over Direct Child Nodes by IndexDemonstrates some ways to iterate over direct child nodes by index. The input XML, available at http://www.chilkatsoft.com/data/get_child.xml, is this: <root> <fruit color="red">apple</fruit> <fruit color="green">pear</fruit> <veg color="orange">carrot</veg> <meat animal="cow">beef</meat> <xyz> <fruit color="blue">blueberry</fruit> <veg color="green">broccoli</veg> </xyz> <fruit color="purple">grape</fruit> <cheese color="yellow">cheddar</cheese> </root>
Dim xml As New Chilkat.Xml Dim child As Chilkat.Xml Dim success As Boolean ' The sample input XML is available at http://www.chilkatsoft.com/data/get_child.xml success = xml.LoadXmlFile("get_child.xml") If (success <> True) Then Debug.WriteLine(xml.LastErrorText) Exit Sub End If ' The NumChildren property contains the number of direct ' child nodes. Note: The child nodes under "xyz" are NOT ' direct children of "root". Therefore, the "root" node has ' 7 direct children Debug.WriteLine("NumChildren = " & xml.NumChildren) ' Iterate over the direct children by index. The first child ' is at index 0. Dim i As Integer For i = 0 To xml.NumChildren - 1 ' access the tag and content directly by index: Debug.WriteLine(i & ": " & xml.GetChildTagByIndex(i) & " : " & xml.GetChildContentByIndex(i)) Next Debug.WriteLine("-----") ' Do the same as the above loop, but get the child node ' and access the Tag and Content properties: For i = 0 To xml.NumChildren - 1 child = xml.GetChild(i) Debug.WriteLine(i & ": " & child.Tag & " : " & child.Content) Next Debug.WriteLine("-----") ' Do the same as the above loop, but instead of creating ' a new object instance for each child, call GetChild2 to ' update the object's reference instead. For i = 0 To xml.NumChildren - 1 ' Navigate to the Nth child. success = xml.GetChild2(i) Debug.WriteLine(i & ": " & xml.Tag & " : " & xml.Content) ' Navigate back up to the parent: success = xml.GetParent2() Next Debug.WriteLine("-----") ' Notice that the Content of the "xyz" node is empty. This is correct. ' The "xyz" node has no Content, but 2 direct children |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.