Sample code for 30+ languages & platforms
Dart

Upload Multiple FTP Files by Wildcard (MPUT)

See more FTP Examples

Demonstrates the Chilkat Ftp2.MPutFiles method, which uploads each local file matching a pattern to the current remote directory. The only argument is the local pattern, which may include a directory and wildcard. It returns the number of files uploaded, or -1 on failure.

Note: The local paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.

Background: The upload counterpart to MGetFiles — FTP's mput. The wildcard is matched against the local filesystem, and every match is sent to the current remote directory; subdirectories are not traversed, so use PutTree for a recursive upload. As with MGetFiles, the return distinguishes a genuine failure (-1) from simply matching nothing.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // Demonstrates the Ftp2.MPutFiles method, which uploads each local file matching a pattern to the
  // current remote directory.  The only argument is the local pattern (which may include a
  // directory and wildcard).  It returns the number of files uploaded, or -1 on failure.

  final ftp = CkFtp2();

  ftp.hostname = 'ftp.example.com';
  ftp.username = 'myFtpLogin';

  // Normally you would not hard-code the password in source.  You should instead obtain it
  // from an interactive prompt, environment variable, or a secrets vault.
  ftp.password = 'myPassword';

  try {
    ftp.connect();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  try {
    ftp.changeRemoteDir('public_html');
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Upload all .html files from a local directory.  Subdirectories are not traversed.
  final numUploaded = ftp.mPutFiles('qa_data/site/*.html');
  if (numUploaded < 0) {
    print(ftp.lastErrorText);
    return;
  }

  print('Uploaded $numUploaded files.');

  try {
    ftp.disconnect();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }
}