Sample code for 30+ languages & platforms
Go

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

Go
    success := false

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

    ftp := chilkat.NewFtp2()

    ftp.SetHostname("www.authtls-ftps-server.com")
    ftp.SetUsername("FTP_LOGIN")
    ftp.SetPassword("FTP_PASSWORD")
    ftp.SetAuthTls(true)
    ftp.SetPort(21)

    // Connect to the FTP server using explicit TLS (AUTH TLS).
    success = ftp.ConnectOnly()
    if success == false {
        fmt.Println(ftp.LastErrorText())
        ftp.DisposeFtp2()
        return
    }

    // Authenticate.
    success = ftp.LoginAfterConnectOnly()
    if success == false {
        fmt.Println(ftp.LastErrorText())
        ftp.DisposeFtp2()
        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.
    fac := chilkat.NewFileAccess()
    dt := chilkat.NewCkDateTime()
    lastModTimestamp := fac.GetFileTimeStr("qa_data/hamlet.xml",0)
    dt.SetFromTimestamp(*lastModTimestamp)

    success = ftp.SetRemoteFileDt(dt,"hamlet.xml")
    if success != true {
        fmt.Println(ftp.LastErrorText())
        dt.DisposeCkDateTime()
        ftp.DisposeFtp2()
        fac.DisposeFileAccess()
        dt.DisposeCkDateTime()
        return
    }

    ftp.Disconnect()

    fmt.Println("Success.")

    ftp.DisposeFtp2()
    fac.DisposeFileAccess()
    dt.DisposeCkDateTime()