Ruby Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript

Ruby
Examples

Quick Start
Unicode
Byte Array
Bz2
Certificates
CSV
Email
Encryption
FTP
HTML-to-XML
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
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.

Download Chilkat Ruby Library

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()
 

Need a specific example? Send a request to support@chilkatsoft.com

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