Sample code for 30+ languages & platforms
Perl

Download Text File into String Variable

See more FTP Examples

Download a text file directly into a string variable.

Chilkat Perl Downloads

Chilkat2 Perl
use strict;
use warnings;
use Chilkat2;

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

my $ftp = Chilkat2::Ftp2->new;

$ftp->Hostname('ftp.someFtpServer.com');
$ftp->Username('myFtpUserAccount');
$ftp->Password('myFtpPassword');

# Set other possible settings...
# See http://www.cknotes.com/determining-ftp2-connection-settings/
# for more information about FTP connection settings.
$ftp->Passive(1);
$ftp->AuthTls(1);

# Connect and login to the FTP server.
my $success = $ftp->Connect();
if (!$success) {
    print $ftp->LastErrorText, "\n";
    exit;
}

# Change to the remote directory where the existing file is located.
$success = $ftp->ChangeRemoteDir('junk');
if (!$success) {
    print $ftp->LastErrorText, "\n";
    exit;
}

# 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)
my $fileContents = $ftp->GetRemoteFileTextData('ansiText.txt');
if (!$ftp->LastMethodSuccess) {
    print $ftp->LastErrorText, "\n";
    exit;
} else {
    print $fileContents, "\n";
}

# 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.

$fileContents = $ftp->GetRemoteFileTextC('utf8Text.txt', 'utf-8');
if (!$ftp->LastMethodSuccess) {
    print $ftp->LastErrorText, "\n";
    exit;
} else {
    print $fileContents, "\n";
}

$success = $ftp->Disconnect();