Dart
Dart
CRLF Mode
See more FTP Examples
The CrlfMode property applies when downloading files in ASCII mode. If CrlfMode is set to 0 (the default), then the ASCII transfer happens normally without alteration. A value of 1 converts all line endings to CR+ LF. A value of 2 converts all line endings to LF-only. A value of 3 converts all line endings to CR-only.Chilkat Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
final ftp = CkFtp2();
ftp.hostname = 'ftp.chilkatsoft.com';
ftp.username = 'MyLogin';
ftp.password = 'MyPassword';
// Connect and login to the FTP server.
try {
ftp.connect();
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
// Set the transfer mode to ASCII
try {
ftp.setTypeAscii();
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
// Set the CrlfMode to ensure that line endings are CR+LF:
ftp.crlfMode = 1;
// CrlfMode line ending settings:
// 0 = do ASCII transfer without alteration.
// 1 = CR+LF
// 2 = LF-only
// 3 = CR-only
// Change to the remote directory where the file will be uploaded.
try {
ftp.changeRemoteDir('junk');
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
final localFilename = 'hamlet.xml';
final remoteFilename = 'hamlet.xml';
// Turn on session logging for the upload:
ftp.keepSessionLog = true;
// Download a file.
try {
ftp.getFile(remoteFilename, localFilename);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
// View the session log. You can verify visually that
// the transfer was in ascii mode.
print(ftp.sessionLog);
ftp.disconnect();
print('File Downloaded!');
}