Unicode C
Unicode C
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 Unicode C Downloads
#include <C_CkZipW.h>
#include <C_CkStringArrayW.h>
void ChilkatSample(void)
{
BOOL success;
HCkZipW zip;
HCkStringArrayW sa;
BOOL recurse;
success = FALSE;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
zip = CkZipW_Create();
success = CkZipW_NewZip(zip,L"test.zip");
if (success != TRUE) {
wprintf(L"%s\n",CkZipW_lastErrorText(zip));
CkZipW_Dispose(zip);
return;
}
// Create a string array object with our set of filename patterns
// to be excluded:
sa = CkStringArrayW_Create();
success = CkStringArrayW_Append(sa,L"*.bak");
success = CkStringArrayW_Append(sa,L"*.tmp");
// Tell the zip object to use these exclusions:
CkZipW_SetExclusions(zip,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.
recurse = TRUE;
success = CkZipW_AppendFiles(zip,L"/temp/a/*",recurse);
success = CkZipW_WriteZipAndClose(zip);
if (success != TRUE) {
wprintf(L"%s\n",CkZipW_lastErrorText(zip));
CkZipW_Dispose(zip);
CkStringArrayW_Dispose(sa);
return;
}
wprintf(L"Zip Created!\n");
CkZipW_Dispose(zip);
CkStringArrayW_Dispose(sa);
}