Sample code for 30+ languages & platforms
Dart Requires Chilkat v11.0.0+

Zip One File

See more Zip Examples

Zip a single file.

Chilkat Dart Downloads

Dart
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 zip = CkZip();

  try {
    zip.newZip('test.zip');
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // In this example, the file we wish to zip is /temp/abc123/HelloWorld123.txt

  // Add a reference to a single file by calling AddFile
  // Note: You may use either forward or backward slashes.
  final saveExtraPath = false;
  try {
    zip.addFile('/temp/abc123/HelloWorld123.txt', saveExtraPath);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  try {
    zip.writeZipAndClose();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // A .zip containing "HelloWorld123.txt" with no path information has been created.
  print('Zip Created!');

  // Perhaps you want to include a path in the .zip such that when unzipping, a sub-directory
  // is automatically created and the file unzipped into it.  Use PathPrefix:

  // (We'll skip checking the success/failure return value.)

  // Set a PathPrefix to get the relative path you want:
  // The .zip will contain this entry: "myApp/HelloWorld123.txt";
  zip.newZip('test2.zip');
  zip.pathPrefix = 'myApp/';
  zip.addFile('/temp/abc123/HelloWorld123.txt', saveExtraPath);
  zip.writeZipAndClose();
}