Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerShell) Demonstrate XML SearchForTag2Demonstrates how to use SearchForTag2.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll" $xml = New-Object 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 = $xml.GetRoot() $afterPtr = $xml.GetRoot() # 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. $([string]$i + ": " + $xmlSearch.Content) $pTemp = $afterPtr $afterPtr = $xmlSearch $pTemp.GetRoot2() $xmlSearch = $pTemp } $("----") # A better way: $sbState = New-Object Chilkat.StringBuilder $i = 0 while ($xml.NextInTraversal2($sbState) -ne $false) { if ($xml.TagEquals("testchild1") -eq $true) { $([string]$i + ": " + $xml.Content) $i = $i + 1 } } $xml.GetRoot2() |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.