Ruby
Ruby
Get FTP Directory Listing Information
See more FTP Examples
_LANGUAGE_ example showing how to get information about files and subdirectories in the current remote FTP directory.Chilkat Ruby Downloads
require 'chilkat'
success = false
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
ftp = Chilkat::CkFtp2.new()
ftp.put_Hostname("ftp.example.com")
ftp.put_Username("login")
ftp.put_Password("password")
# Connect and login to the FTP server.
success = ftp.Connect()
if (success != true)
print ftp.lastErrorText() + "\n";
exit
end
# The ListPattern property is our directory listing filter.
# The default value is "*", which includes everything.
print ftp.listPattern() + "\n";
# To get file and sub-directory information, simply
# loop from 0 to ftp.GetDirCount() - 1
n = ftp.GetDirCount()
if (n < 0)
print ftp.lastErrorText() + "\n";
exit
end
if (n > 0)
for i in 0 .. n - 1
# Display the filename
print ftp.getFilename(i) + "\n";
# Display the file size (in bytes)
print ftp.GetSize(i).to_s() + "\n";
# Is this a sub-directory?
if (ftp.GetIsDirectory(i) == true)
print ".. this is a sub-directory" + "\n";
end
print "--" + "\n";
end
end
print "-----------------------------------" + "\n";
# Only files and directories
# matching the ListPattern are returned.
ftp.put_ListPattern("*.asp")
n = ftp.GetDirCount()
if (n < 0)
print ftp.lastErrorText() + "\n";
exit
end
if (n > 0)
for i in 0 .. n - 1
# Display the filename
print ftp.getFilename(i) + "\n";
# Display the file size (in bytes)
print ftp.GetSize(i).to_s() + "\n";
print "--" + "\n";
end
end
success = ftp.Disconnect()