Go
Go
FTP Download Text File to a Stream
See more FTP Examples
Demonstrates how to FTP download a text file to a Chilkat stream.Note: This example requires Chilkat v9.5.0.67 or greater.
Chilkat Go Downloads
success := false
// This example assumes the Chilkat FTP2 API to have been previously unlocked.
// See FTP2 Unlock Sample for sample code.
ftp := chilkat.NewFtp2()
ftp.SetHostname("www.my-ftp-server.com")
ftp.SetUsername("mFtpLogin")
ftp.SetPassword("myFtpPassword")
ftp.SetAuthTls(true)
ftp.SetPassive(true)
// Connect and login to the FTP server using TLS.
success = ftp.Connect()
if success != true {
fmt.Println(ftp.LastErrorText())
ftp.DisposeFtp2()
return
}
streamObj := chilkat.NewStream()
// Indicate the charset of the incoming data.
streamObj.SetStringCharset("utf-8")
// Create a task to do the FTP download.
c := make(chan *chilkat.Task)
go ftp.GetFileToStreamAsync("lines.txt",streamObj,c)
t := <-c
if ftp.LastMethodSuccess() != true {
fmt.Println(ftp.LastErrorText())
ftp.DisposeFtp2()
streamObj.DisposeStream()
t.DisposeTask()
return
}
// Start the task in a background thread.
// Read the incoming text data using any of the streamObj Read methods.
// This example will read line-by-line.
var line *string = new(string)
for streamObj.EndOfStream() != true {
line = streamObj.ReadToCRLF()
if streamObj.LastMethodSuccess() == true {
fmt.Println(*line)
}
}
t.DisposeTask()
fmt.Println("Success.")
ftp.DisposeFtp2()
streamObj.DisposeStream()
t.DisposeTask()