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

Unzip an AES Encrypted Text File directly into a String Variable

See more Zip Examples

A common need is to unzip from an AES encrypted Zip archive directly into a string variable, such that the unencrypted file never resides on disk, even temporarily. This example shows how to do it.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oZip
LOCAL oEntry
LOCAL nLineEndingBehavior
LOCAL cSrcCharset
LOCAL cXmlText

nSuccess := 0

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

oZip := CreateObject("Chilkat.Zip")

//  This example opens a WinZip-compatible AES encrypted
//  .zip that contains a single file: hamlet.xml.

//  It decrypts and unzips hamlet.xml directly into a string
//  variable.
oZip:SetPassword("secret")
nSuccess := oZip:OpenZip("qa_data/hamlet.zip")
IF (nSuccess == 0)
    ? oZip:LastErrorText
    oZip:destroy()
    RETURN
ENDIF

oEntry := CreateObject("Chilkat.ZipEntry")
nSuccess := oZip:EntryOf("hamlet.xml", oEntry)
IF (nSuccess == 0)
    ? oZip:LastErrorText
    oZip:destroy()
    oEntry:destroy()
    RETURN
ENDIF

//  lineEndingBehavior:
//  0 = leave unchanged.
//  1 = convert all to bare LF's
//  2 = convert all to CRLF's
nLineEndingBehavior := 0
cSrcCharset := "utf-8"
cXmlText := oEntry:UnzipToString(nLineEndingBehavior, cSrcCharset)
? cXmlText

oZip:destroy()
oEntry:destroy()