Sample code for 30+ languages & platforms
Classic ASP Requires Chilkat v11.0.0+

Unzip Some Files by Iterating over Entries

See more Zip Examples

Demonstrates how to unzip specific files by iterating over entries in a .zip.

Chilkat Classic ASP Downloads

Classic ASP
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0

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

set zip = Server.CreateObject("Chilkat.Zip")

'  Open a .zip containing:
'  
'  a1.xml
'  b1.xml
'  c1.xml
'  dir1/a2.xml
'  dir1/c2.xml
'  dir2/dir3/c3.xml

'  We wish to unzip only a1.xml, b1.xml, and c1.xml
success = zip.OpenZip("qa_data/zips/xml_files.zip")
If (success = 0) Then
    Response.Write "<pre>" & Server.HTMLEncode( zip.LastErrorText) & "</pre>"
    Response.End
End If

set sbFilename = Server.CreateObject("Chilkat.StringBuilder")

set entry = Server.CreateObject("Chilkat.ZipEntry")
numEntries = zip.NumEntries
i = 0
Do While i < numEntries
    success = zip.EntryAt(i,entry)

    entryFilePath = entry.FileName
    Response.Write "<pre>" & Server.HTMLEncode( entryFilePath) & "</pre>"

    If (entry.IsDirectory = 0) Then
        success = sbFilename.SetString(entryFilePath)
        If (sbFilename.Contains("/",0) = 0) Then
            '  Does not contain "/"
            '  Unzip to the qa_output directory.
            success = entry.Extract("qa_output")
            If (success = 0) Then
                Response.Write "<pre>" & Server.HTMLEncode( "Failed to unzip " & entryFilePath) & "</pre>"
            Else
                Response.Write "<pre>" & Server.HTMLEncode( "Unzipped " & entryFilePath) & "</pre>"
            End If

        End If

    End If

    i = i + 1
Loop

%>
</body>
</html>