我编写了一个应用程序,使用zlib和minizip将目录内容从C ++压缩为.zip文件。 Minizip在线没有很好的文档,但源代码中的“zip.h”文件包含注释。
我的应用程序使用FindFirstFile和FindNextFile获取目录中所有文件(和子文件夹)的列表,然后,如此处所示How do I use Minizip (on Zlib)?创建.zip文件并打开新文件.zip中的文件。
然后我用fopen和fread读取源文件,并将内容写入.zip文件夹中新创建的文件。如果要压缩的目录只包含文件而没有子文件夹,这一切都可以正常工作,但是我无法从源代码中的注释中解读如何将新文件夹添加到.zip文件然后将文件写入该文件夹。 / p>
答案 0 :(得分:2)
事实证明,您不需要在.zip文件中创建一个新目录作为单独的步骤。您只需将参数“foldername \ filename.ext”传递给zipOpenNewFileInZip方法,它就会为您创建“foldername”目录,然后在该目录中添加一个新文件“filename.ext”。