【发布时间】:2014-05-30 20:19:13
【问题描述】:
我正在使用它来将 GZIP 压缩文件“input.gz”解压缩为未压缩的“output.file”。它工作得很好,除了我需要一个固定大小的缓冲区(在本例中为 1MB),如果输出变大,字节就会被切断。有没有办法让它与任何输出大小一起工作?
#include "zlib.h"
#include <stdio.h>
int main()
{
char buf[1024*1024];
gzFile in = gzopen("input.gz","rb8");
int len = gzread(in,buf,sizeof(buf));
gzclose(in);
FILE* out = fopen("output.file", "wb");
fwrite(buf,1,len,out);
fclose(out);
free(buf);
return 0;
}
【问题讨论】:
标签: c++ gzip compression