我目前正在学习 C,并且在尝试制作一个利用 zlib 的小程序时遇到了一些问题。
我已经设法使用 zlib 库编译我的应用程序(使用 Codeblocks/MinGW),并且编译工作正常。我使用了一个基于官方 zlib 站点 (zlib.net)上的zpipe.c示例的示例。
执行时,会创建输出 zip 文件,但它似乎格式错误和/或为空。我无法使用 7zip 打开它。
这是我修改过的代码。我只是简单地替换了 zpipe.c 中的 main() 函数。
int main() {
printf("Compression test...");
int ret;
FILE *fpsource;
FILE *fpdest;
fpsource = fopen("test.txt", "rb");
fpdest = fopen("output.zip", "wb");
ret = def(fpsource, fpdest, Z_DEFAULT_COMPRESSION);
if (ret != Z_OK) {
printf("failure\n");
zerr(ret);
}
else {
printf("success..\n");
}
fclose(fpsource);
fclose(fpdest);
return EXIT_SUCCESS;
}
我没有收到任何错误,并且打印了我的“成功”消息。只是输出文件损坏了。