DataFlex
DataFlex
Get FTP Directory Listing Information
See more FTP Examples
_LANGUAGE_ example showing how to get information about files and subdirectories in the current remote FTP directory.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoFtp
Integer i
Integer n
String sTemp1
Integer iTemp1
Boolean bTemp1
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatFtp2)) To hoFtp
If (Not(IsComObjectCreated(hoFtp))) Begin
Send CreateComObject of hoFtp
End
Set ComHostname Of hoFtp To "ftp.example.com"
Set ComUsername Of hoFtp To "login"
Set ComPassword Of hoFtp To "password"
// Connect and login to the FTP server.
Get ComConnect Of hoFtp To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoFtp To sTemp1
Showln sTemp1
Procedure_Return
End
// The ListPattern property is our directory listing filter.
// The default value is "*", which includes everything.
Get ComListPattern Of hoFtp To sTemp1
Showln sTemp1
// To get file and sub-directory information, simply
// loop from 0 to ftp.GetDirCount() - 1
Get ComGetDirCount Of hoFtp To n
If (n < 0) Begin
Get ComLastErrorText Of hoFtp To sTemp1
Showln sTemp1
Procedure_Return
End
If (n > 0) Begin
For i From 0 To (n - 1)
// Display the filename
Get ComGetFilename Of hoFtp i To sTemp1
Showln sTemp1
// Display the file size (in bytes)
Get ComGetSize Of hoFtp i To iTemp1
Showln iTemp1
// Is this a sub-directory?
Get ComGetIsDirectory Of hoFtp i To bTemp1
If (bTemp1 = True) Begin
Showln ".. this is a sub-directory"
End
Showln "--"
Loop
End
Showln "-----------------------------------"
// Only files and directories
// matching the ListPattern are returned.
Set ComListPattern Of hoFtp To "*.asp"
Get ComGetDirCount Of hoFtp To n
If (n < 0) Begin
Get ComLastErrorText Of hoFtp To sTemp1
Showln sTemp1
Procedure_Return
End
If (n > 0) Begin
For i From 0 To (n - 1)
// Display the filename
Get ComGetFilename Of hoFtp i To sTemp1
Showln sTemp1
// Display the file size (in bytes)
Get ComGetSize Of hoFtp i To iTemp1
Showln iTemp1
Showln "--"
Loop
End
Get ComDisconnect Of hoFtp To iSuccess
End_Procedure