Sample code for 30+ languages & platforms
Xbase++

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 Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oZip
LOCAL oSa
LOCAL nRecurse

nSuccess := 0

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

oZip := CreateObject("Chilkat.Zip")

nSuccess := oZip:NewZip("test.zip")
IF (nSuccess != 1)
    ? oZip:LastErrorText
    oZip:destroy()
    RETURN
ENDIF

//  Create a string array object with our set of filename patterns
//  to be excluded:
oSa := CreateObject("Chilkat.StringArray")
nSuccess := oSa:Append("*.bak")
nSuccess := oSa:Append("*.tmp")

//  Tell the zip object to use these exclusions:
oZip:SetExclusions(oSa)

//  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.
nRecurse := 1
nSuccess := oZip:AppendFiles("/temp/a/*", nRecurse)

nSuccess := oZip:WriteZipAndClose()
IF (nSuccess != 1)
    ? oZip:LastErrorText
    oZip:destroy()
    oSa:destroy()
    RETURN
ENDIF

? "Zip Created!"

oZip:destroy()
oSa:destroy()