Sample code for 30+ languages & platforms
Lianja

Get a Remote FTP File's Last-Modified Time by Name

See more FTP Examples

Demonstrates the Chilkat Ftp2.GetLastModifiedTimeByNameStr method, which returns the last-modified time of a named item in the current remote directory as an RFC 822 date-time string. The only argument is the filename.

Background: This queries one item's modification time directly (typically via MDTM) rather than pulling and scanning a whole listing — efficient when you already know the filename and just need its timestamp, for example to decide whether a local copy is stale. The RFC 822 string includes a timezone offset, so the moment is unambiguous.

Chilkat Lianja Downloads

Lianja
llSuccess = .F.

//  Demonstrates the Ftp2.GetLastModifiedTimeByNameStr method, which returns the last-modified time
//  of a named item in the current remote directory as an RFC 822 date-time string.  The only
//  argument is the filename.

loFtp = createobject("CkFtp2")

loFtp.Hostname = "ftp.example.com"
loFtp.Username = "myFtpLogin"

//  Normally you would not hard-code the password in source.  You should instead obtain it
//  from an interactive prompt, environment variable, or a secrets vault.
loFtp.Password = "myPassword"

llSuccess = loFtp.Connect()
if (llSuccess = .F.) then
    ? loFtp.LastErrorText
    release loFtp
    return
endif

llSuccess = loFtp.ChangeRemoteDir("public_html")
if (llSuccess = .F.) then
    ? loFtp.LastErrorText
    release loFtp
    return
endif

lcLastModified = loFtp.GetLastModifiedTimeByNameStr("report.pdf")
if (loFtp.LastMethodSuccess = .F.) then
    ? loFtp.LastErrorText
    release loFtp
    return
endif

? "Last modified: " + lcLastModified

llSuccess = loFtp.Disconnect()
if (llSuccess = .F.) then
    ? loFtp.LastErrorText
    release loFtp
    return
endif



release loFtp