DataFlex
DataFlex
Get Number of FIles in Directory, not including sub-directories
See more FTP Examples
_LANGUAGE_ example demonstrating how to get the number of files in a directory not including sub-directories.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoFtp
Integer i
Integer n
Integer iFileCount
String sTemp1
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
// Fetch the current remote directory contents by
// calling GetDirCount
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
// Loop over the directory contents, incrementing the count
// each time it is NOT a directory.
Move 0 To iFileCount
For i From 0 To (n - 1)
// Is this NOT a sub-directory?
Get ComGetIsDirectory Of hoFtp i To bTemp1
If (bTemp1 <> True) Begin
Move (iFileCount + 1) To iFileCount
// Display the filename
Get ComGetFilename Of hoFtp i To sTemp1
Showln sTemp1
End
Loop
Showln "Total number of files = " iFileCount
End
Get ComDisconnect Of hoFtp To iSuccess
End_Procedure