Chilkat HOME ASP Visual Basic VB.NET C# C C++ MFC Delphi FoxPro Java Perl Python Ruby SQL Server VBScript
SFTP Writing utf-8 vs. ANSI Text FilesDemonstrates how to specify the charset, such as utf-8, ANSI, windows-1250, iso-8859-1, Shift_JIS, etc., when writing text files. See the List of Charsets for all supported charsets.
<?php // Important: It is helpful to send the contents of the // sftp.LastErrorText property when requesting support. $sftp = new COM("Chilkat.SFtp"); // Any string automatically begins a fully-functional 30-day trial. $success = $sftp->UnlockComponent('Anything for 30-day trial'); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } // Set some timeouts, in milliseconds: $sftp->ConnectTimeoutMs = 5000; $sftp->IdleTimeoutMs = 15000; // Connect to the SSH server. // The standard SSH port = 22 // The hostname may be a hostname or IP address. $hostname = '192.168.1.108'; $port = 22; $success = $sftp->Connect($hostname,$port); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } // Authenticate with the SSH server. Chilkat SFTP supports // both password-based authenication as well as public-key // authentication. This example uses password authenication. $success = $sftp->AuthenticatePw('myLogin','myPassword'); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } // After authenticating, the SFTP subsystem must be initialized: $success = $sftp->InitializeSftp(); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } // Open a file on the server for writing. // "createTruncate" means that a new file is created; if the file already exists, it is opened and truncated. $handle = $sftp->openFile('utf8_sample.txt','writeOnly','createTruncate'); if (is_null($handle)) { print $sftp->lastErrorText() . "\n"; exit; } // Write a single utf-8 character to the file - a lowercase ü // A "ü" in utf-8 is represented by 2 bytes: 0xC3 0xBC // The following call to WriteFileText writes 2 bytes (0xC3 0xBC) // to the file: $success = $sftp->WriteFileText($handle,'utf-8','ü'); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } // Close the file. $success = $sftp->CloseHandle($handle); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } // Let's write the same "ü" character using windows-1252 // (which is the ANSI charset for Western-European languages) $handle = $sftp->openFile('windows1252_sample.txt','writeOnly','createTruncate'); if (is_null($handle)) { print $sftp->lastErrorText() . "\n"; exit; } // Write a single windows-1252 character to the file - a lowercase ü // A "ü" in windows-1252 is represented by 1 byte: 0xFC // The following call to WriteFileText writes 1 byte (0xFC) // to the file: $success = $sftp->WriteFileText($handle,'windows-1252','ü'); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } // Close the file. $success = $sftp->CloseHandle($handle); if ($success != true) { print $sftp->lastErrorText() . "\n"; exit; } print 'Success.' . "\n"; ?> |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.