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) Get FTP Directory Listing as XMLDemonstrates how to call GetXmlDirListing and parse the results.
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll" # This example assumes Chilkat Ftp2 to have been previously unlocked. # See Unlock Ftp2 for sample code. $ftp = New-Object Chilkat.Ftp2 $ftp.Hostname = "www.my-ftp-server.com" $ftp.Username = "mFtpLogin" $ftp.Password = "myFtpPassword" # Connect to the FTP server. $success = $ftp.ConnectOnly() if ($success -ne $true) { $($ftp.LastErrorText) exit } # Authenticate with the FTP server. $success = $ftp.LoginAfterConnectOnly() if ($success -ne $true) { $($ftp.LastErrorText) exit } # Retrieve (in XML format) the HOME directory of this FTP account. $xmlListing = $ftp.GetXmlDirListing("*.*") if ($ftp.LastMethodSuccess -ne $true) { $($ftp.LastErrorText) exit } # Now load the XML and parse it.. $xml = New-Object Chilkat.Xml $xml.LoadXml($xmlListing) $($xml.GetXml()) # Iterate over the XML... $i = 0 $numEntries = $xml.NumChildren while ($i -lt $numEntries) { $xEntry = $xml.GetChild($i) if ($xEntry.TagEquals("dir") -eq $true) { $("Directory: " + $xEntry.Content) } else { $sz = $xEntry.GetChildIntValue("size") $("File: " + $xEntry.GetChildContent("name") + ", size: " + $sz) $xLastMod = $xEntry.FindChild("lastModTime") if ($xEntry.LastMethodSuccess -eq $true) { $month = $xLastMod.GetAttrValueInt("m") $year = $xLastMod.GetAttrValueInt("y") $day = $xLastMod.GetAttrValueInt("d") $(" YYYY-MM-DD: " + $year + "-" + $month + "-" + $day) } } $i = $i + 1 } $ftp.Disconnect() $("Success.") # Sample XML directory listing: # <?xml version="1.0" encoding="utf-8" ?> # <remoteDir> # <dir>Desktop</dir> # <dir>Documents</dir> # <dir>Downloads</dir> # <dir>Music</dir> # <dir>Pictures</dir> # <dir>Public</dir> # <dir>Templates</dir> # <dir>Videos</dir> # <file> # <name>c.py</name> # <size>1244</size> # <lastModTime full="20151009-000000" y="2015" d="9" m="10" hh="0" mm="0" ss="0" /> # </file> # <file> # <name>cacerts_linux</name> # <size>177207</size> # <lastModTime full="20140915-000000" y="2014" d="15" m="9" hh="0" mm="0" ss="0" /> # </file> # <file> # <name>empty.txt</name> # <size>0</size> # <lastModTime full="20150917-000000" y="2015" d="17" m="9" hh="0" mm="0" ss="0" /> # </file> # <file> # <name>hamlet.xml</name> # <size>279658</size> # <lastModTime full="20160917-084100" y="2016" d="17" m="9" hh="8" mm="41" ss="0" /> # </file> # </remoteDir> # # |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.