Rust
Rust
Download Text File into String Variable
See more FTP Examples
Download a text file directly into a string variable.Chilkat Rust Downloads
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let ftp = chilkat::Ftp2::new();
ftp.set_hostname("ftp.someFtpServer.com");
ftp.set_username("myFtpUserAccount");
ftp.set_password("myFtpPassword");
// Set other possible settings...
// See http://www.cknotes.com/determining-ftp2-connection-settings/
// for more information about FTP connection settings.
ftp.set_passive(true);
ftp.set_auth_tls(true);
// Connect and login to the FTP server.
if ftp.connect().is_err() {
println!("{}", ftp.last_error_text());
return;
}
// Change to the remote directory where the existing file is located.
if ftp.change_remote_dir("junk").is_err() {
println!("{}", ftp.last_error_text());
return;
}
// Download the contents of the remote file into a string variable.
// The GetRemoteFileTextData method assumes the remote file contains ANSI chars.
// To download text files containing non-ANSI text, such as utf-8, call GetRemoteFileTextC
// instead. (see below)
let mut file_contents = ftp.get_remote_file_text_data("ansiText.txt").unwrap_or_default();
if !ftp.last_method_success() {
println!("{}", ftp.last_error_text());
return;
} else {
println!("{}", file_contents);
}
// To download a remote text file containing utf-8 chars,
// call GetRemoteFileTextC and pass "utf-8" for the 2nd arg. This tells
// Chilkat to interpret the incoming bytes according to the utf-8 character encoding.
file_contents = ftp.get_remote_file_text_c("utf8Text.txt", "utf-8").unwrap_or_default();
if !ftp.last_method_success() {
println!("{}", ftp.last_error_text());
return;
} else {
println!("{}", file_contents);
}
let _ = ftp.disconnect().is_ok();