Sample code for 30+ languages & platforms
Objective-C

FTP Set Remote File Date/Time Equal to Local File's Last-Modified Date/Time

See more FTP Examples

Demonstrates how to set a remote file's date/time to be equal to a local file's date/time.

Important: Not all FTP servers support the ability to set a file's date/time.

Chilkat Objective-C Downloads

Objective-C
#import <CkoFtp2.h>
#import <CkoFileAccess.h>
#import <CkoDateTime.h>
#import <NSString.h>

BOOL success = NO;

// This example assumes Chilkat Ftp2 to have been previously unlocked.
// See Unlock Ftp2 for sample code.

CkoFtp2 *ftp = [[CkoFtp2 alloc] init];

ftp.Hostname = @"www.authtls-ftps-server.com";
ftp.Username = @"FTP_LOGIN";
ftp.Password = @"FTP_PASSWORD";
ftp.AuthTls = YES;
ftp.Port = [NSNumber numberWithInt:21];

// Connect to the FTP server using explicit TLS (AUTH TLS).
success = [ftp ConnectOnly];
if (success == NO) {
    NSLog(@"%@",ftp.LastErrorText);
    return;
}

// Authenticate.
success = [ftp LoginAfterConnectOnly];
if (success == NO) {
    NSLog(@"%@",ftp.LastErrorText);
    return;
}

// We're going to get the last-mod date/time for the local file
// "qa_data/hamlet.xml", and then set the remote "hamlet.xml" to this date/time.
CkoFileAccess *fac = [[CkoFileAccess alloc] init];
CkoDateTime *dt = [[CkoDateTime alloc] init];
NSString *lastModTimestamp = [fac GetFileTimeStr: @"qa_data/hamlet.xml" which: [NSNumber numberWithInt: 0]];
[dt SetFromTimestamp: lastModTimestamp];

success = [ftp SetRemoteFileDt: dt remoteFilename: @"hamlet.xml"];
if (success != YES) {
    NSLog(@"%@",ftp.LastErrorText);

    return;
}

[ftp Disconnect];

NSLog(@"%@",@"Success.");