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

Get ZIP Directory Information as XML

See more Zip Examples

This example demonstrates how to use the GetDirectoryAsXML method to retrieve information about the contents of a ZIP archive as an XML document.

The returned XML describes the files currently contained in the ZIP object

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
long li_Success
oleobject loo_Zip
string ls_Xml

li_Success = 0

//  Open an existing ZIP archive.
loo_Zip = create oleobject
li_rc = loo_Zip.ConnectToNewObject("Chilkat.Zip")
if li_rc < 0 then
    destroy loo_Zip
    MessageBox("Error","Connecting to COM object failed")
    return
end if

li_Success = loo_Zip.OpenZip("example.zip")
if li_Success = 0 then
    Write-Debug loo_Zip.LastErrorText
    destroy loo_Zip
    return
end if

//  Get the ZIP directory information as XML.
ls_Xml = loo_Zip.GetDirectoryAsXML()

Write-Debug ls_Xml

//  Suppose the ZIP contains:

//  data/config/settings.json
//  docs/readme.txt
//  images/logo.png

//  The XML contains one element for each ZIP entry.
//  Example:
//  
//  <?xml version="1.0" encoding="utf-8"?>
//  <zip_contents>
//      <dir name="data">
//          <dir name="config">
//              <file>settings.json</file>
//          </dir>
//      </dir>
//      <dir name="docs">
//          <file>readme.txt</file>
//      </dir>
//      <dir name="images">
//          <file>logo.png</file>
//      </dir>
//  </zip_contents>

loo_Zip.CloseZip()

Write-Debug "Done."


destroy loo_Zip