Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) SFTP Get File Date/Times in Different FormatsSee more SFTP ExamplesDemonstrates how to get remote file date/times in different formats.
IncludeFile "CkStringBuilder.pb" IncludeFile "CkSFtpDir.pb" IncludeFile "CkSFtp.pb" IncludeFile "CkSFtpFile.pb" IncludeFile "CkDateTime.pb" Procedure ChilkatExample() ; This requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. sftp.i = CkSFtp::ckCreate() If sftp.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; Connect to the SSH server. hostname.s = "my-sftp-server.com" port.i = 22 success.i = CkSFtp::ckConnect(sftp,hostname,port) If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Authenticate with the SSH server. success = CkSFtp::ckAuthenticatePw(sftp,"myLogin","myPassword") If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; After authenticating, the SFTP subsystem must be initialized: success = CkSFtp::ckInitializeSftp(sftp) If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Open a directory on the server... ; This example opens the "junk" directory located under the HOME directory of the SSH user account. handle.s = CkSFtp::ckOpenDir(sftp,"junk") If CkSFtp::ckLastMethodSuccess(sftp) <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Download the directory listing: dirListing.i = CkSFtp::ckReadDir(sftp,handle) If CkSFtp::ckLastMethodSuccess(sftp) <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Close the directory handle success = CkSFtp::ckCloseHandle(sftp,handle) If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Iterate over the files. ; Examine each filename and indicate those that match *FICHERO*.pdf ; (i.e. the filename contains the word "FICHERO" and ends in ".pdf") i.i = 0 n.i = CkSFtpDir::ckNumFilesAndDirs(dirListing) sbFilename.i = CkStringBuilder::ckCreate() If sbFilename.i = 0 Debug "Failed to create object." ProcedureReturn EndIf caseSensitive.i = 0 bLocalDateTime.i = 0 While i < n fileObj.i = CkSFtpDir::ckGetFileObject(dirListing,i) Debug CkSFtpFile::ckFilename(fileObj) ; Get the last-modified date/time dt.i = CkSFtpFile::ckGetLastModifiedDt(fileObj) ; Get the date/time in any format offered by the CkDateTime object. ; such as Wed, 18 Oct 2017 09:08:21 GMT Debug "RFC822 format: " + CkDateTime::ckGetAsRfc822(dt,bLocalDateTime) ; such as 1990-12-31T23:59:60Z Debug "Timestamp: " + CkDateTime::ckGetAsTimestamp(dt,bLocalDateTime) ; Such as: "02/16/2008 12:15:12" where hour is 0 to 23. Debug "RFC822 format: " + CkDateTime::ckGetAsIso8601(dt,"MM/DD/YYYY hh:mm:ss",bLocalDateTime) CkDateTime::ckDispose(dt) CkSFtpFile::ckDispose(fileObj) i = i + 1 Wend CkSFtpDir::ckDispose(dirListing) Debug "Success." CkSFtp::ckDispose(sftp) CkStringBuilder::ckDispose(sbFilename) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.