24,855
社区成员
发帖
与我相关
我的任务
分享
/* compress or decompress from stdin to stdout */
int main(int argc, char **argv)
{
int ret;
FILE *src, *temp, *des;
src = fopen("c:\\test.txt", "r"); // source file
temp = fopen("c:\\test2.txt", "w+"); // compressed file
des = fopen("c:\\test3.txt", "w+"); // uncompressed file, 0K
/* do compression if no arguments */
if (argc == 1) {
ret = def(src, temp, Z_DEFAULT_COMPRESSION);//the original statement is ret = def(standin, standout, Z_DEFAULT_COMPRESSION);
ret = inf(temp, des); // I add the stament to uncompress
if (ret != Z_OK)
zerr(ret);
return ret;
}
/* do decompression if -d specified */
else if (argc == 2 && strcmp(argv[1], "-d") == 0) {
ret = inf(stdin, stdout);
if (ret != Z_OK)
zerr(ret);
return ret;
}
/* otherwise, report usage */
else {
fputs("zpipe usage: zpipe [-d] < source > dest\n", stderr);
return 1;
}
//然后在cmd运行输入://当然先指定zpipe.exe的运行路径
zpipe < foo.txt > foo.txt.z // to compress
zpipe -d < foo.txt.z > foo.txt // to decompress.