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
(AutoIt) Get FTP Directory Listing as XMLDemonstrates how to call GetXmlDirListing and parse the results.
; This example assumes Chilkat Ftp2 to have been previously unlocked. ; See Unlock Ftp2 for sample code. $oFtp = ObjCreate("Chilkat.Ftp2") $oFtp.Hostname = "www.my-ftp-server.com" $oFtp.Username = "mFtpLogin" $oFtp.Password = "myFtpPassword" ; Connect to the FTP server. Local $bSuccess = $oFtp.ConnectOnly() If ($bSuccess <> True) Then ConsoleWrite($oFtp.LastErrorText & @CRLF) Exit EndIf ; Authenticate with the FTP server. $bSuccess = $oFtp.LoginAfterConnectOnly() If ($bSuccess <> True) Then ConsoleWrite($oFtp.LastErrorText & @CRLF) Exit EndIf ; Retrieve (in XML format) the HOME directory of this FTP account. Local $sXmlListing = $oFtp.GetXmlDirListing("*.*") If ($oFtp.LastMethodSuccess <> True) Then ConsoleWrite($oFtp.LastErrorText & @CRLF) Exit EndIf ; Now load the XML and parse it.. $oXml = ObjCreate("Chilkat.Xml") $oXml.LoadXml($sXmlListing) ConsoleWrite($oXml.GetXml() & @CRLF) ; Iterate over the XML... Local $i = 0 Local $iNumEntries = $oXml.NumChildren While $i < $iNumEntries Local $oXEntry = $oXml.GetChild($i) If ($oXEntry.TagEquals("dir") = True) Then ConsoleWrite("Directory: " & $oXEntry.Content & @CRLF) Else Local $iSz = $oXEntry.GetChildIntValue("size") ConsoleWrite("File: " & $oXEntry.GetChildContent("name") & ", size: " & $iSz & @CRLF) Local $oXLastMod = $oXEntry.FindChild("lastModTime") If ($oXEntry.LastMethodSuccess = True) Then Local $iMonth = $oXLastMod.GetAttrValueInt("m") Local $iYear = $oXLastMod.GetAttrValueInt("y") Local $iDay = $oXLastMod.GetAttrValueInt("d") ConsoleWrite(" YYYY-MM-DD: " & $iYear & "-" & $iMonth & "-" & $iDay & @CRLF) EndIf EndIf $i = $i + 1 Wend $oFtp.Disconnect() ConsoleWrite("Success." & @CRLF) ; 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.