Environment: OS independend
Now many applications need API to do gzip in memory. Zlib form http://www.gzip.org/zlib provides gzip and ungzip function,but they is for file,It's very inconvenience to compress and decompress small data compressing in memory. I ported the gzip and ungzip function to two template class CA2GZIP and CGZIP2A to do gzip in memory, and they also allocate and deallocate memory automatically. It works with zlib from http://www.gzip.org/zlib. the following is some codes for how to use them.
#include "GZipHelper.h" void main() { char plainText[]="Plain text here"; CA2GZIP gzip(plainText,strlen(plainText)); // do compressing here; LPGZIP pgzip=gzip.pgzip; // pgzip is zipped data pointer, you can use it irectly int len=gzip.Length; // Length is length of zipped data; CGZIP2A plain(pgzip,len); // do uncompressing here char *pplain=plain.psz; // psz is plain data pointer int aLen=plain.Length; // Length is length of unzipped data. }