Java Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Java Examples

Quick Start
Java Unicode
Java Certs
Java Email
Java Encryption
Java FTP
HTML-to-XML
Java HTTP
Java IMAP
Java MHT
Java MIME
Java RSA
Java S/MIME
Java Signatures
Java Socket
Java Spider
Java Tar
Java Upload
Java XML
Java XMP
Java Zip

More Examples...
Email Object
POP3
SMTP
RSS
Atom
String
Byte Array
Self-Extractor

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

 

 

 

 

 

 

 

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.

Download Chilkat Java Library

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();
  }
}

 

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

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