Sample code for 30+ languages & platforms
Swift

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 Swift Downloads

Swift

func chilkatTest() {
    var success: Bool = false

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

    let ftp = CkoFtp2()!

    ftp.hostname = "www.authtls-ftps-server.com"
    ftp.username = "FTP_LOGIN"
    ftp.password = "FTP_PASSWORD"
    ftp.authTls = true
    ftp.port = 21

    // Connect to the FTP server using explicit TLS (AUTH TLS).
    success = ftp.connectOnly()
    if success == false {
        print("\(ftp.lastErrorText!)")
        return
    }

    // Authenticate.
    success = ftp.loginAfterConnectOnly()
    if success == false {
        print("\(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.
    let fac = CkoFileAccess()!
    let dt = CkoDateTime()!
    var lastModTimestamp: String? = fac.getFileTimeStr(path: "qa_data/hamlet.xml", which: 0)
    dt.set(fromTimestamp: lastModTimestamp)

    success = ftp.setRemoteFileDt(dt: dt, remoteFilename: "hamlet.xml")
    if success != true {
        print("\(ftp.lastErrorText!)")
        dt = nil
        return
    }

    ftp.disconnect()

    print("Success.")

}