Programming Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

C Examples

Bounced Mail
Bz2
Certificates/Keys
Charset
CSV
DKIM / DomainKey
Diffie-Hellman
DSA
Email Object
Encryption
FileAccess
FTP
HTML Conversion
HTTP
IMAP
MHT / HTML Email
MIME
NTLM
POP3
RSA
SMTP
Socket
Spider
SSH Key
SSH
SSH Tunnel
SFTP
Tar
Upload
XML
Zip
Amazon S3

 

 

 

 

 

 

 

 

Get FTP Directory Listing Information

C example showing how to get information about files and subdirectories in the current remote FTP directory.

Downloads:

MS Windows Visual C/C++ Libraries
Linux/CentOS C/C++ Libraries
MAC OS X C/C++ Libraries
Solaris C/C++ Libraries
C++ Builder Libraries
#include <C_CkFtp2.h>

void ChilkatSample(void)
    {
    HCkFtp2 ftp;
    BOOL success;
    long i;
    long n;

    ftp = CkFtp2_Create();

    //  Any string unlocks the component for the 1st 30-days.
    success = CkFtp2_UnlockComponent(ftp,"Anything for 30-day trial");
    if (success != TRUE) {
        printf("%s\n",CkFtp2_lastErrorText(ftp));
        return;
    }

    CkFtp2_putHostname(ftp,"www.example-code.com");
    CkFtp2_putUsername(ftp,"****");
    CkFtp2_putPassword(ftp,"****");

    //  Connect and login to the FTP server.
    success = CkFtp2_Connect(ftp);
    if (success != TRUE) {
        printf("%s\n",CkFtp2_lastErrorText(ftp));
        return;
    }

    //  The ListPattern property is our directory listing filter.
    //  The default value is "*", which includes everything.
    printf("%s\n",CkFtp2_listPattern(ftp));

    //  To get file and sub-directory information, simply
    //  loop from 0 to ftp.NumFilesAndDirs - 1

    n = CkFtp2_getNumFilesAndDirs(ftp);
    if (n < 0) {
        printf("%s\n",CkFtp2_lastErrorText(ftp));
        return;
    }

    if (n > 0) {
        for (i = 0; i <= n - 1; i++) {

            //  Display the filename
            printf("%s\n",CkFtp2_getFilename(ftp,i));

            //  Display the file size (in bytes)
            printf("%d\n",CkFtp2_GetSize(ftp,i));

            //  Is this a sub-directory?
            if (CkFtp2_GetIsDirectory(ftp,i) == TRUE) {
                printf(".. this is a sub-directory\n");
            }

            printf("--\n");
        }

    }

    printf("-----------------------------------\n");

    //  Changing the ListPattern automatically changes the value
    //  of the NumFilesAndDirs property.  Only files and directories
    //  matching the ListPattern are returned.
    CkFtp2_putListPattern(ftp,"*.asp");
    n = CkFtp2_getNumFilesAndDirs(ftp);
    if (n < 0) {
        printf("%s\n",CkFtp2_lastErrorText(ftp));
        return;
    }

    if (n > 0) {
        for (i = 0; i <= n - 1; i++) {

            //  Display the filename
            printf("%s\n",CkFtp2_getFilename(ftp,i));

            //  Display the file size (in bytes)
            printf("%d\n",CkFtp2_GetSize(ftp,i));

            printf("--\n");
        }

    }

    CkFtp2_Disconnect(ftp);

    CkFtp2_Dispose(ftp);

    }

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.