DataFlex
DataFlex
Decompress a Base64-Encoded Gzip String
See more Gzip Examples
This example demonstrates how to use the UncompressStringENC method to decompress Gzip-compressed data that is provided as an encoded string.
The example first compresses a string and encodes the result as Base64. It then demonstrates how the Base64 string can be decoded and decompressed back into the original text.
Internally, the method performs three steps:
- The input string is decoded from the specified encoding (Base64 in this example) to obtain the compressed binary data.
- The binary data is decompressed using the Gzip algorithm.
- The resulting bytes are interpreted using the specified character set (UTF-8) to produce the final string.
This method is useful when working with compressed data embedded in text-based formats such as JSON, XML, or HTTP responses.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoGzip
String sInputStr
String sCompressedBase64
String sDecompressed
String sTemp1
Boolean bTemp1
// This example demonstrates how to decompress Gzip data that is
// provided as a Base64-encoded string.
Get Create (RefClass(cComChilkatGzip)) To hoGzip
If (Not(IsComObjectCreated(hoGzip))) Begin
Send CreateComObject of hoGzip
End
// First, create a compressed Base64 string for demonstration purposes:
Move "The quick brown fox jumps over the lazy dog." To sInputStr
Set ComFilename Of hoGzip To "quickBrownFox.txt"
Get ComCompressStringENC Of hoGzip sInputStr "utf-8" "base64" To sCompressedBase64
Get ComLastMethodSuccess Of hoGzip To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoGzip To sTemp1
Showln sTemp1
Procedure_Return
End
Showln "Compressed (Base64): " sCompressedBase64
// Now decompress the Base64-encoded Gzip string:
Get ComUncompressStringENC Of hoGzip sCompressedBase64 "utf-8" "base64" To sDecompressed
Get ComLastMethodSuccess Of hoGzip To bTemp1
If (bTemp1 = False) Begin
Get ComLastErrorText Of hoGzip To sTemp1
Showln sTemp1
Procedure_Return
End
Showln "Decompressed string:"
Showln sDecompressed
End_Procedure