Java
Chilkat2 Java
FTP Download with Progress Event Callbacks
See more FTP Examples
FTP download with progress event callbacks.Chilkat Java Downloads
import com.chilkatsoft.chilkat2.ChilkatException;
import com.chilkatsoft.chilkat2.Ftp2;
import com.chilkatsoft.chilkat2.ProgressListener;
public class ChilkatExample {
public static void main(String[] args) {
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Ftp2 ftp = new Ftp2();
ftp.setProgressListener(new ProgressListener() {
@Override
public boolean percentDone(int percentDone) {
System.out.println("Percent Done: " + percentDone);
return false; // return true to abort the method in progress
}
@Override
public void progressInfo(String name, String value) {
System.out.println(name + ": " + value);
}
});
ftp.setHostname("ftp.someFtpServer.com");
ftp.setUsername("myLogin");
ftp.setPassword("myPassword");
// Connect and login to the FTP server.
try {
ftp.connectOnly();
ftp.loginAfterConnectOnly();
// Change to the remote directory where the file is located.
// This step is only necessary if the file is not in the home directory
// of the FTP account.
ftp.changeRemoteDir("junk");
} catch (ChilkatException e) {
System.out.println(e.getLastErrorText());
return;
}
String localFilename = "c:/temp/hamlet.xml";
String remoteFilename = "hamlet.xml";
// Ensure that we get PercentDone callbacks.
ftp.setAutoGetSizeForProgress(true);
// Download the file.
try {
ftp.getFile(remoteFilename, localFilename);
} catch (ChilkatException e) {
System.out.println(e.getLastErrorText());
return;
}
ftp.disconnect();
System.out.println("File Downloaded!");
}
}