Sample code for 30+ languages & platforms
Go

Using the FTP Session Log

See more FTP Examples

The Chilkat FTP component can keep a session log if the KeepSessionLog property is turned on. This is helpful in debugging problems. Chilkat support will usually ask for a session log when working to resolve your problem, because it contains a log of the exact commands sent to the FTP server, and the exact responses received.

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("login")
    ftp.SetPassword("password")

    // Set the KeepSessionLog property in order to keep a session log.
    // The session log will continuously grow in memory.  The
    // ClearSessionLog method may be called to clear it.  The session
    // logging may be turned on/off at any point.
    ftp.SetKeepSessionLog(true)

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

    // Change to the remote directory where the existing file is located.
    success = ftp.ChangeRemoteDir("junk")
    if success != true {
        fmt.Println(ftp.LastErrorText())
        ftp.DisposeFtp2()
        return
    }

    // To clear the SessionLog at any point, call ClearSessionLog:
    // call ftp.ClearSessionLog();

    // Append moreHamlet.txt to hamlet.txt on the FTP server.
    localFilename := "moreHamlet.txt"
    remoteFilename := "hamlet.txt"

    success = ftp.AppendFile(localFilename,remoteFilename)
    if success != true {
        fmt.Println(ftp.LastErrorText())
        ftp.DisposeFtp2()
        return
    }

    success = ftp.Disconnect()

    // Display the entire session log:
    fmt.Println(ftp.SessionLog())

    fmt.Println("File Appended!")

    ftp.DisposeFtp2()