Ruby Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Ruby
Examples

Quick Start
Unicode
Byte Array
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT
MIME
POP3
RSA
S/MIME
Signatures
SFTP
SMTP
Socket / SSL
Spider
SSH
SSH Key
SSH Tunnel
Tar
HTTP Upload
XML
XMP
Zip

More Examples...
String
Amazon S3
Email Object
DKIM / DomainKey
NTLM
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
Bzip2
DH Key Exchange
DSA
LZW

 

 

 

 

 

 

 

Upload Directory Tree using a Plan

Chilkat FTP provides two methods to make it easier to upload large directory trees to an FTP server. The CreatePlan/PutPlan methods can be used to upload and resume an upload if an external failure occurs while the upload is in progress. The CreatePlan method recursively descends the local filesystem directory tree and creates a "plan" of all the files and directories that will be uploaded by PutPlan. The PutPlan method accepts a "plan", and keeps a log file of its progress as it proceeds. If PutPlan fails, it can be called again with the same log file to resume the upload.

Downloads for Windows/Linux and Install Instructions

require 'rubygems'
require 'chilkat'

ftp = Chilkat::CkFtp2.new()

#  Any string unlocks the component for the 1st 30-days.
success = ftp.UnlockComponent("Anything for 30-day trial")
if (success != true)
    print ftp.lastErrorText() + "\n"
    exit
end

ftp.put_Hostname("ftp.chilkatsoft.com")
ftp.put_Username("myLogin")
ftp.put_Password("myPassword")

#  Connect and login to the FTP server.
success = ftp.Connect()
if (success != true)
    print ftp.lastErrorText() + "\n"
    exit
end

#  Set the current remote directory to the root where the
#  directory tree will be uploaded.
success = ftp.ChangeRemoteDir("/something")
if (success != true)
    print ftp.lastErrorText() + "\n"
    exit
end

#  Create a plan for uploading the entire
#  directory tree rooted at c:/temp/something
plan = ftp.createPlan("c:/temp/something")

print plan + "\n";

#  Upload from the plan:
success = ftp.PutPlan(plan,"planLog.txt")
if (success != true)
    print ftp.lastErrorText() + "\n"
    exit
end

#  If PutPlan fails while in progress, it may be called again
#  to resume the upload.  Simply pass the same plan and plan log
#  to PutPlan.  PutPlan will skip over the files/directories
#  already uploaded and resume where it left off.

ftp.Disconnect()
 

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.