Sample code for 30+ languages & platforms
B4X

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 B4X Downloads

B4X
Dim success As Boolean = False

'  This example requires the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

Dim ftp As ChilkatFtp2
ftp.Initialize("ftp")

ftp.Hostname = "ftp.example.com"
ftp.Username = "login"
ftp.Password = "password"

'  Connect and login to the FTP server.
success = ftp.Connect
If success <> True Then
    Log(ftp.LastErrorText)
    Return
End If


'  The ListPattern property is our directory listing filter.
'  The default value is "*", which includes everything.
Log(ftp.ListPattern)

'  To get file and sub-directory information, simply
'  loop from 0 to ftp.GetDirCount() - 1
Dim i As Int
Dim n As Int
n = ftp.GetDirCount
If n < 0 Then
    Log(ftp.LastErrorText)
    Return
End If

If n > 0 Then
    For i = 0 To n - 1

        '  Display the filename
        Log(ftp.GetFilename(i))

        '  Display the file size (in bytes)
        Log(ftp.GetSize(i))

        '  Is this a sub-directory?
        If ftp.GetIsDirectory(i) = True Then
            Log(".. this is a sub-directory")
        End If


        Log("--")
    Next
End If


Log("-----------------------------------")

'  Only files and directories
'  matching the ListPattern are returned.
ftp.ListPattern = "*.asp"
n = ftp.GetDirCount
If n < 0 Then
    Log(ftp.LastErrorText)
    Return
End If

If n > 0 Then
    For i = 0 To n - 1

        '  Display the filename
        Log(ftp.GetFilename(i))

        '  Display the file size (in bytes)
        Log(ftp.GetSize(i))

        Log("--")
    Next
End If


success = ftp.Disconnect