Go
Go
Compress and Decompress a String
See more Compression Examples
Demonstrates how to compress and decompress a string.Chilkat Go Downloads
success := false
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
sb := chilkat.NewStringBuilder()
var i int
for i = 1; i <= 20; i++ {
sb.Append("This is the original uncompressed string.\r\n")
}
compress := chilkat.NewCompression()
compress.SetAlgorithm("deflate")
// Indicate that the utf-8 byte representation of the string should be compressed.
compress.SetCharset("utf-8")
var compressedBytes []byte
compressedBytes = compress.CompressString(*sb.GetAsString())
// If the compressed data is desired in string format, then get the base64 representation of the bytes.
compress.SetEncodingMode("base64")
compressedBase64 := compress.CompressStringENC(*sb.GetAsString())
fmt.Println("Compressed Bytes as Base64: ", *compressedBase64)
// Now decompress...
decompressedString := compress.DecompressString(compressedBytes)
fmt.Println("The original string after decompressing from binary compressed data:")
fmt.Println(*decompressedString)
// To decompress from Base64...
compress.SetEncodingMode("base64")
decompressedString = compress.DecompressStringENC(*compressedBase64)
fmt.Println("The original string after decompressing from Base64:")
fmt.Println(*decompressedString)
sb.DisposeStringBuilder()
compress.DisposeCompression()