Sample code for 30+ languages & platforms
Tcl

File Existence Check

See more FTP Examples

Testing to see if a file exists on the FTP server. The GetSizeByName method is a convenient way to check if a file exists. It will return -1 if the file does not exist, otherwise it returns the size of the file in bytes.

Chilkat Tcl Downloads

Tcl

load ./chilkat.dll

set success 0

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

set ftp [new_CkFtp2]

CkFtp2_put_Hostname $ftp "ftp.example.com"
CkFtp2_put_Username $ftp "username"
CkFtp2_put_Password $ftp "password"

# Connect and login to the FTP server.
set success [CkFtp2_Connect $ftp]
if {$success != 1} then {
    puts [CkFtp2_lastErrorText $ftp]
    delete_CkFtp2 $ftp
    exit
}

# Set the current remote directory to where the file is located:
set success [CkFtp2_ChangeRemoteDir $ftp "something"]
if {$success != 1} then {
    puts [CkFtp2_lastErrorText $ftp]
    delete_CkFtp2 $ftp
    exit
}

# Test to see if the file exists by getting the file size by name. 
# If a -1 is returned, the file does not exist.
set fileSize [CkFtp2_GetSizeByName $ftp "test123.txt"]
if {$fileSize < 0} then {
    puts "file does not exist"
} else {
    puts "file exists and is $fileSize bytes in size"
}

set success [CkFtp2_Disconnect $ftp]

delete_CkFtp2 $ftp