Sample code for 30+ languages & platforms
Visual FoxPro

Unzip Selected Files from a Zip Archive

See more Zip Examples

Demonstrates how to iterate over the files contained within a .zip and unzip specific files.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loZip
LOCAL lcUnzipDir
LOCAL n
LOCAL loEntry
LOCAL i

lnSuccess = 0

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

loZip = CreateObject('Chilkat.Zip')

lnSuccess = loZip.OpenZip("my_files.zip")
IF (lnSuccess = 0) THEN
    ? loZip.LastErrorText
    RELEASE loZip
    CANCEL
ENDIF

lcUnzipDir = "/temp/unzipDir"

* Get the number of files and directories in the .zip
n = loZip.NumEntries

loEntry = CreateObject('Chilkat.ZipEntry')

i = 0
DO WHILE i < n

    loZip.EntryAt(i,loEntry)
    IF (loEntry.IsDirectory = 0) THEN
        * (the filename may include a path)
        ? loEntry.FileName

        * Your application may choose to unzip this entry
        * based on the filename.
        * If the entry should be unzipped, then call Extract(unzipDir)
        lnSuccess = loEntry.Extract(lcUnzipDir)
        IF (lnSuccess = 0) THEN
            ? loEntry.LastErrorText
            RELEASE loZip
            RELEASE loEntry
            CANCEL
        ENDIF

    ENDIF

    i = i + 1
ENDDO

RELEASE loZip
RELEASE loEntry