Sample code for 30+ languages & platforms
.NET Core C#

Restart/Resume FTP Download

See more FTP Examples

Resume downloading a file from an FTP server.

Chilkat .NET Core C# Downloads

.NET Core C#
bool success = false;

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

Chilkat.Ftp2 ftp = new Chilkat.Ftp2();

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

// Connect and login to the FTP server.
success = ftp.Connect();
if (success != true) {
    Debug.WriteLine(ftp.LastErrorText);
    return;
}

// Change to the remote directory where the file is located.
// This step is only necessary if the file is not in the root directory
// for the FTP account.
success = ftp.ChangeRemoteDir("temp");
if (success != true) {
    Debug.WriteLine(ftp.LastErrorText);
    return;
}

// To resume a download, it is assumed that the partial file
// is already present on the local filesystem.
// You only need to set the RestartNext property to resume
// the download.  The Chilkat FTP component sets the resume
// point by getting the existing size of the target (local) file.
ftp.RestartNext = true;

string localFilename = "big.zip";
string remoteFilename = "big.zip";

// Resume downloading...
success = ftp.GetFile(remoteFilename,localFilename);
if (success != true) {
    Debug.WriteLine(ftp.LastErrorText);
    return;
}

success = ftp.Disconnect();

Debug.WriteLine("File Downloaded!");