Ruby
Ruby
FTP Upload / Download to StringBuilder
Demonstrate how to upload from a Chilkat StringBuilder object, and download into a StringBuilder object.Chilkat Ruby Downloads
require 'chilkat'
success = false
# This example assumes Chilkat Ftp2 to have been previously unlocked.
# See Unlock Ftp2 for sample code.
ftp = Chilkat::CkFtp2.new()
ftp.put_Hostname("www.my-ftp-server.com")
ftp.put_Username("mFtpLogin")
ftp.put_Password("myFtpPassword")
# Connect to the FTP server.
success = ftp.ConnectOnly()
if (success != true)
print ftp.lastErrorText() + "\n";
exit
end
# Authenticate with the FTP server.
success = ftp.LoginAfterConnectOnly()
if (success != true)
print ftp.lastErrorText() + "\n";
exit
end
sbA = Chilkat::CkStringBuilder.new()
sbA.LoadFile("qa_data/hamlet.xml","utf-8")
# Upload the contents of sbA to the FTP server.
bIncludeBOM = false
remoteFilename = "hamletFromSb.xml"
success = ftp.PutFileSb(sbA,"utf-8",bIncludeBOM,remoteFilename)
if (success != true)
print ftp.lastErrorText() + "\n";
exit
end
# Download...
sbB = Chilkat::CkStringBuilder.new()
success = ftp.GetFileSb(remoteFilename,"utf-8",sbB)
if (success != true)
print ftp.lastErrorText() + "\n";
exit
end
# Verify that sbA and sbB have the exact same contents.
print "size of sbA: " + sbA.get_Length().to_s() + "\n";
bCaseSensitive = true
if (sbA.ContentsEqualSb(sbB,bCaseSensitive) == true)
print "Contents are equal. Success." + "\n";
else
print "Contents are NOT equal. Failed." + "\n";
end
ftp.Disconnect()