Sample code for 30+ languages & platforms
Dart

Zip -- Exclude Files Based on Wildcard Matching

See more Zip Examples

Demonstrates how to use the SetExclusions method to exclude matching files from being added to a .zip.

Chilkat Dart Downloads

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

void main() {
  final zip = CkZip();

  zip.newZip('qa_output/x.zip');

  // Let's add files from the directory tree rooted at C:\AAWorkarea\ChilkatSampleProjects

  // However.. we want to exclude all files ending in ".cache" or ".pdb" regardless of the sub-directory.
  // Also exclude all files under any "obj" directory,
  // and we also want to exclude any .exe found under a "win10-x64" directory.

  final saExcludes = CkStringArray();
  saExcludes.append('*.cache');
  saExcludes.append('*.pdb');
  saExcludes.append('*/obj/*');
  saExcludes.append('*/win10-x64/*.exe');
  zip.setExclusions(saExcludes);

  // Append promises of paths and files to be zipped.
  final recurse = true;
  try {
    zip.appendFiles('c:/AAWorkArea/ChilkatSampleProjects/*', recurse);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Create the zip from the file and directory promises added previously.
  try {
    zip.writeZipAndClose();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  print('Success.');
}