(Go) Zip a Directory Tree
Demonstrates how to zip an entire directory tree into a .zip archive.
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
zip := chilkat.NewZip()
success := zip.NewZip("test.zip")
if success != true {
fmt.Println(zip.LastErrorText())
zip.DisposeZip()
return
}
// Append a directory tree. The call to AppendFiles does
// not read the file contents or append them to the zip
// object in memory. It simply appends references
// to the files so that when WriteZip or WriteZipAndClose
// is called, the referenced files are streamed and compressed
// into the .zip output file.
recurse := true
success = zip.AppendFiles("c:/temp/a/*",recurse)
if success != true {
fmt.Println(zip.LastErrorText())
zip.DisposeZip()
return
}
success = zip.WriteZipAndClose()
if success != true {
fmt.Println(zip.LastErrorText())
zip.DisposeZip()
return
}
fmt.Println("Zip Created!")
zip.DisposeZip()
|