C++
C++
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 C++ Downloads
#include <CkZip.h>
#include <CkStringArray.h>
void ChilkatSample(void)
{
bool success = false;
CkZip zip;
success = 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.
CkStringArray saExcludes;
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.
bool recurse = true;
success = zip.AppendFiles("c:/AAWorkArea/ChilkatSampleProjects/*",recurse);
if (success == false) {
std::cout << zip.lastErrorText() << "\r\n";
return;
}
// Create the zip from the file and directory promises added previously.
success = zip.WriteZipAndClose();
if (success == false) {
std::cout << zip.lastErrorText() << "\r\n";
return;
}
std::cout << "Success." << "\r\n";
}