Xbase++ Requires Chilkat v11.0.0+
Xbase++
Zip One File
See more Zip Examples
Zip a single file.Chilkat Xbase++ Downloads
LOCAL nSuccess
LOCAL oZip
LOCAL nSaveExtraPath
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 == 0)
? oZip:LastErrorText
oZip:destroy()
RETURN
ENDIF
// In this example, the file we wish to zip is /temp/abc123/HelloWorld123.txt
// Add a reference to a single file by calling AddFile
// Note: You may use either forward or backward slashes.
nSaveExtraPath := 0
nSuccess := oZip:AddFile("/temp/abc123/HelloWorld123.txt", nSaveExtraPath)
IF (nSuccess == 0)
? oZip:LastErrorText
oZip:destroy()
RETURN
ENDIF
nSuccess := oZip:WriteZipAndClose()
IF (nSuccess == 0)
? oZip:LastErrorText
oZip:destroy()
RETURN
ENDIF
// A .zip containing "HelloWorld123.txt" with no path information has been created.
? "Zip Created!"
// Perhaps you want to include a path in the .zip such that when unzipping, a sub-directory
// is automatically created and the file unzipped into it. Use PathPrefix:
// (We'll skip checking the success/failure return value.)
// Set a PathPrefix to get the relative path you want:
// The .zip will contain this entry: "myApp/HelloWorld123.txt";
nSuccess := oZip:NewZip("test2.zip")
oZip:PathPrefix := "myApp/"
nSuccess := oZip:AddFile("/temp/abc123/HelloWorld123.txt", nSaveExtraPath)
nSuccess := oZip:WriteZipAndClose()
oZip:destroy()