Sample code for 30+ languages & platforms
Go

Get Number of FIles in Directory, not including sub-directories

See more FTP Examples

_LANGUAGE_ example demonstrating how to get the number of files in a directory not including sub-directories.

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")

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

    // The ListPattern property is our directory listing filter.
    // The default value is "*", which includes everything.
    fmt.Println(ftp.ListPattern())

    // Fetch the current remote directory contents by
    // calling GetDirCount
    var i int
    var n int
    n = ftp.GetDirCount()
    if n < 0 {
        fmt.Println(ftp.LastErrorText())
        ftp.DisposeFtp2()
        return
    }

    if n > 0 {
        // Loop over the directory contents, incrementing the count
        // each time it is NOT a directory.
        fileCount := 0
        for i = 0; i <= n - 1; i++ {

            // Is this NOT a sub-directory?
            if ftp.GetIsDirectory(i) != true {
                fileCount = fileCount + 1
                // Display the filename
                fmt.Println(*ftp.GetFilename(i))
            }

        }

        fmt.Println("Total number of files = ", fileCount)
    }

    success = ftp.Disconnect()

    ftp.DisposeFtp2()