Sample code for 30+ languages & platforms
PowerShell

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 PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

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

$ftp = New-Object Chilkat.Ftp2

$ftp.Hostname = "www.authtls-ftps-server.com"
$ftp.Username = "FTP_LOGIN"
$ftp.Password = "FTP_PASSWORD"
$ftp.AuthTls = $true
$ftp.Port = 21

# Connect to the FTP server using explicit TLS (AUTH TLS).
$success = $ftp.ConnectOnly()
if ($success -eq $false) {
    $($ftp.LastErrorText)
    exit
}

# Authenticate.
$success = $ftp.LoginAfterConnectOnly()
if ($success -eq $false) {
    $($ftp.LastErrorText)
    exit
}

# 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 = New-Object Chilkat.FileAccess
$dt = New-Object Chilkat.CkDateTime
$lastModTimestamp = $fac.GetFileTimeStr("qa_data/hamlet.xml",0)
$dt.SetFromTimestamp($lastModTimestamp)

$success = $ftp.SetRemoteFileDt($dt,"hamlet.xml")
if ($success -ne $true) {
    $($ftp.LastErrorText)

    exit
}

$ftp.Disconnect()

$("Success.")