Sample code for 30+ languages & platforms
Go

Get Last Modified Date/Time of Files in a Remote Directory

Gets the last-modified date/times of files in a remote FTP directory.

Chilkat Go Downloads

Go
    success := false

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

    ftp := chilkat.NewFtp2()

    ftp.SetHostname("ftp.example.com")
    ftp.SetUsername("myLogin")
    ftp.SetPassword("myPassword")
    // Use explicit TLS
    ftp.SetAuthTls(true)
    ftp.SetPort(21)

    // For debugging, turn on session logging so we can examine what is sent by the server.
    ftp.SetKeepSessionLog(true)

    // Connect and login to the FTP server.
    success = ftp.Connect()
    if success == false {
        fmt.Println(ftp.LastErrorText())
        ftp.DisposeFtp2()
        return
    }

    // Iterate over .txt files.
    ftp.SetListPattern("*.txt")
    n := ftp.GetDirCount()
    fmt.Println("n = ", n)

    i := 0
    for i < n {
        fmt.Println(i, ": ", *ftp.GetFilename(i), ", ", *ftp.GetLastModifiedTimeStr(i))
        i = i + 1
    }

    // Show the session log so we can see the details of the FTP directory listing sent by the server.
    // This tells us what information is available.  Some FTP servers provide better and more accurate information
    // than others.

    fmt.Println("---- Session Log ----")
    fmt.Println(ftp.SessionLog())

    ftp.Disconnect()

    ftp.DisposeFtp2()