如何使用zlib轻松压缩和解压缩文件?

时间:2011-04-13 12:16:26

标签: c++ zlib compression

如何使用zlib轻松压缩和解压缩文件?

3 个答案:

答案 0 :(得分:14)

减压:

char buf[1024*1024*16];
gzFile *fi = (gzFile *)gzopen("file.gz","rb");
gzrewind(fi);
while(!gzeof(fi))
{
    int len = gzread(fi,buf,sizeof(buf));
        //buf contains len bytes of decompressed data
}
gzclose(fi);

用于压缩

gzFile *fi = (gzFile *)gzopen("file.gz","wb");
gzwrite(fi,"my decompressed data",strlen("my decompressed data"));
gzclose(fi);

答案 1 :(得分:1)

请仔细阅读。该信息已经提供here
这是即使在谷歌上显示的第一个链接。

答案 2 :(得分:-1)

如果你可以使用boost,我会推荐使用boost iostreams API。见 boost iostreams tutorial。它支持GZIP和BZIP2压缩器和解压缩器。