我正在使用Zlib的Minizip程序。我正在尝试将文件添加到当前的zip文件中。我发现我可以使用函数附加zip文件:
extern zipFile ZEXPORT zipOpen64 OF((const void * pathname,int append));
将append设置为2.但是这不会覆盖zip中的文件,而是只是将文件添加到zip的末尾,无论它们是否已存在。有没有什么办法解决这一问题?我想选择只替换旧文件和/或覆盖所有文件。
答案 0 :(得分:1)
minizip库目前不支持除将文件添加到zip存档之外的任何内容。它也不支持删除或更新存档中的文件。
来自minizip网站的引用可能会对您有所帮助:
Ivan A. Krestinin写了small example如何从zip存档中删除文件......
您可以将删除操作与添加操作结合使用,以实现文件内文件替换。上面示例代码的缺点是它需要在磁盘上创建临时zip文件。