Sample code for 30+ languages & platforms
Rust

Create Zip Excluding Files Matching Patterns

See more Zip Examples

How to create a .zip archive excluding (skipping) files that match a set of wildcarded patterns.

Chilkat Rust Downloads

Rust

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

let zip = chilkat::Zip::new();

if zip.new_zip("test.zip").is_err() {
    println!("{}", zip.last_error_text());
    return;
}

// Create a string array object with our set of filename patterns
// to be excluded:
let sa = chilkat::StringArray::new();
let _ = sa.append("*.bak").is_ok();
let _ = sa.append("*.tmp").is_ok();

// Tell the zip object to use these exclusions:
zip.set_exclusions(&sa);

// Append a directory tree.  The AppendFiles does
// not read the file contents or append them to the zip
// object in memory.  It simply appends references
// to the files so that when WriteZip (or WriteZipAndClose,
// or WriteExe, etc.) is called, the files are compressed
// and encrypted.
let recurse = true;
let _ = zip.append_files("/temp/a/*", recurse).is_ok();

if zip.write_zip_and_close().is_err() {
    println!("{}", zip.last_error_text());
    return;
}

println!("Zip Created!");