Sample code for 30+ languages & platforms
Go

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 Go Downloads

Go
    success := false

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

    zip := chilkat.NewZip()

    // 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.
    zip.SetPassword("secret")
    success = zip.OpenZip("qa_data/hamlet.zip")
    if success == false {
        fmt.Println(zip.LastErrorText())
        zip.DisposeZip()
        return
    }

    entry := chilkat.NewZipEntry()
    success = zip.EntryOf("hamlet.xml",entry)
    if success == false {
        fmt.Println(zip.LastErrorText())
        zip.DisposeZip()
        entry.DisposeZipEntry()
        return
    }

    // lineEndingBehavior:
    // 0 = leave unchanged.
    // 1 = convert all to bare LF's
    // 2 = convert all to CRLF's
    lineEndingBehavior := 0
    srcCharset := "utf-8"
    xmlText := entry.UnzipToString(lineEndingBehavior,srcCharset)
    fmt.Println(*xmlText)

    zip.DisposeZip()
    entry.DisposeZipEntry()