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
(DataFlex) SFTP Read Text File to StringDemonstrates how to download a text file from an SSH server directly into a string variable.
Use ChilkatAx-win32.pkg Procedure Test Handle hoSftp String sHostname Integer iPort Boolean iSuccess String sHandle Boolean iBFollowLinks Boolean iBIsHandle Integer iNumBytes String sCharset String sFileContents String sTemp1 Boolean bTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatSFtp)) To hoSftp If (Not(IsComObjectCreated(hoSftp))) Begin Send CreateComObject of hoSftp End // Set some timeouts, in milliseconds: Set ComConnectTimeoutMs Of hoSftp To 5000 Set ComIdleTimeoutMs Of hoSftp To 15000 // Connect to the SSH server. // The standard SSH port = 22 // The hostname may be a hostname or IP address. Move "sftp.example.com" To sHostname Move 22 To iPort Get ComConnect Of hoSftp sHostname iPort To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSftp To sTemp1 Showln sTemp1 Procedure_Return End // Authenticate with the SSH server. Chilkat SFTP supports // both password-based authenication as well as public-key // authentication. This example uses password authenication. Get ComAuthenticatePw Of hoSftp "myLogin" "myPassword" To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSftp To sTemp1 Showln sTemp1 Procedure_Return End // After authenticating, the SFTP subsystem must be initialized: Get ComInitializeSftp Of hoSftp To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSftp To sTemp1 Showln sTemp1 Procedure_Return End // Open a file on the server: Get ComOpenFile Of hoSftp "hamlet.xml" "readOnly" "openExisting" To sHandle Get ComLastMethodSuccess Of hoSftp To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoSftp To sTemp1 Showln sTemp1 Procedure_Return End // Get the total size of this file (in bytes) Move False To iBFollowLinks Move True To iBIsHandle // bFollowLinks is ignored because we are passing a handle // and not a remote filename. // There are alternative methods for handling file sizes // greater than 32-bit. (See the reference documentation.) Get ComGetFileSize32 Of hoSftp sHandle iBFollowLinks iBIsHandle To iNumBytes If (iNumBytes < 0) Begin Get ComLastErrorText Of hoSftp To sTemp1 Showln sTemp1 Procedure_Return End // The charset indicates the character encoding of the text // file on the SSH server. Setting the charset correctly // allows the Chilkat SFTP component to correctly interpret // the bytes that represent the characters. Move "ansi" To sCharset Get ComReadFileText Of hoSftp sHandle iNumBytes sCharset To sFileContents Get ComLastMethodSuccess Of hoSftp To bTemp1 If (bTemp1 <> True) Begin Get ComLastErrorText Of hoSftp To sTemp1 Showln sTemp1 Procedure_Return End Else Begin Showln "Received file:" Showln sFileContents End // Close the file. Get ComCloseHandle Of hoSftp sHandle To iSuccess If (iSuccess <> True) Begin Get ComLastErrorText Of hoSftp To sTemp1 Showln sTemp1 Procedure_Return End Showln "Success." End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.