Sample code for 30+ languages & platforms
Ruby

FTP Set Remote File Date/Time Equal to Local File's Last-Modified Date/Time

See more FTP Examples

Demonstrates how to set a remote file's date/time to be equal to a local file's date/time.

Important: Not all FTP servers support the ability to set a file's date/time.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

# This example assumes Chilkat Ftp2 to have been previously unlocked.
# See Unlock Ftp2 for sample code.

ftp = Chilkat::CkFtp2.new()

ftp.put_Hostname("www.authtls-ftps-server.com")
ftp.put_Username("FTP_LOGIN")
ftp.put_Password("FTP_PASSWORD")
ftp.put_AuthTls(true)
ftp.put_Port(21)

# Connect to the FTP server using explicit TLS (AUTH TLS).
success = ftp.ConnectOnly()
if (success == false)
    print ftp.lastErrorText() + "\n";
    exit
end

# Authenticate.
success = ftp.LoginAfterConnectOnly()
if (success == false)
    print ftp.lastErrorText() + "\n";
    exit
end

# We're going to get the last-mod date/time for the local file
# "qa_data/hamlet.xml", and then set the remote "hamlet.xml" to this date/time.
fac = Chilkat::CkFileAccess.new()
dt = Chilkat::CkDateTime.new()
lastModTimestamp = fac.getFileTimeStr("qa_data/hamlet.xml",0)
dt.SetFromTimestamp(lastModTimestamp)

success = ftp.SetRemoteFileDt(dt,"hamlet.xml")
if (success != true)
    print ftp.lastErrorText() + "\n";

    exit
end

ftp.Disconnect()

print "Success." + "\n";