(Go) Unzip Files to Byte Array
Demonstrates how to unzip each file contained in a .zip to an in-memory byte array.
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
zip := chilkat.NewZip()
success := zip.OpenZip("qa_data/zips/test.zip")
if success == false {
fmt.Println(zip.LastErrorText())
zip.DisposeZip()
return
}
// Iterate of each entry in the zip.
// An entry can be a file or directory entry. For each file, unzip to a byte array.
numEntries := zip.NumEntries()
fmt.Println("NumEntries = ", numEntries)
i := 0
for i < numEntries {
entry := zip.GetEntryByIndex(i)
if entry.IsDirectory() == false {
fileData := entry.Inflate()
// Do whatever you wish with the file data...
}
entry.DisposeZipEntry()
i = i + 1
}
zip.CloseZip()
fmt.Println("Finished.")
zip.DisposeZip()
|