Java Examples

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

Java Examples

Quick Start
Unicode
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
SFTP
Signatures
SMTP
Socket / SSL
Spider
SSH
SSH Key
SSH Tunnel
Tar
Upload
XML
XMP
Zip

More Examples...
Amazon S3
Email Object
DKIM / DomainKey
NTLM
FileAccess
RSS
Atom
String
Byte Array
Self-Extractor
Service
PPMD
Deflate
DH Key Exchange
DSA
Bzip2
LZW

 

 

 

 

 

 

 

Download and Delete Matching Files

Java example showing how to FTP download files matching a wildcarded file pattern and delete them from the FTP server.

 Chilkat Java Library Downloads for Windows, Linux, and MAC OS X

import com.chilkatsoft.*;

public class ChilkatExample {

  static {
    try {
        System.loadLibrary("chilkat");
    } catch (UnsatisfiedLinkError e) {
      System.err.println("Native code library failed to load.\n" + e);
      System.exit(1);
    }
  }

  public static void main(String argv[])
  {
    CkFtp2 ftp = new CkFtp2();

    boolean success;

    //  Any string unlocks the component for the 1st 30-days.
    success = ftp.UnlockComponent("Anything for 30-day trial");
    if (success != true) {
        System.out.println(ftp.lastErrorText());
        return;
    }

    ftp.put_Hostname("www.example-code.com");
    ftp.put_Username("****");
    ftp.put_Password("****");

    //  Connect and login to the FTP server.
    success = ftp.Connect();
    if (success != true) {
        System.out.println(ftp.lastErrorText());
        return;
    }

    //  Note: It may be tempting to call MGetFiles(pattern,localDir)
    //  followed by a call to DeleteMatching(pattern), however,
    //  if new files are uploaded to the FTP server while MGetFiles
    //  is running, those files will be deleted by DeleteMatching.

    //  Instead, it's best to set the ListPattern and then iterate
    //  over each file...

    //  Set the ListPattern = "*.xml" to match all XML files.
    ftp.put_ListPattern("*.xml");

    //  NumFilesAndDirs contains the number of files and sub-directories
    //  matching the ListPattern in the current remote directory.
    //  The first time it is accessed after changing ListPattern,
    //  or after calling ChangeRemoteDir, a snapshot of the directory
    //  listing is fetched and saved in memory. During this loop,
    //  the value of NumFilesAndDirs will not change.
    int i;
    String fname;

    int n;
    n = (int) ftp.get_NumFilesAndDirs();
    if (n < 0) {
        System.out.println(ftp.lastErrorText());
        return;
    }

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

            fname = ftp.getFilename(i);
            System.out.println(fname);

            //  Download the file into the current working directory.
            success = ftp.GetFile(fname,fname);
            if (success != true) {
                System.out.println(ftp.lastErrorText());
                return;
            }

            //  Now delete the file.
            success = ftp.DeleteRemoteFile(fname);
            if (success != true) {
                System.out.println(ftp.lastErrorText());
                return;
            }

        }

    }

    ftp.Disconnect();
  }
}

 

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