0

我正在寻找一个库,只需将 ZIP 存档中的所有文件移动到 C++ 中的另一个库。我找到了 libzip,但最好只用于某些您知道名称的文件。我不关心档案 A 和档案 B 之间的步骤,只要它不会花费太多时间。(如果可能,它将删除其临时文件夹中的文件)。我更喜欢便携式图书馆。

谢谢!

4

1 回答 1

1

Libzip 可能是最好的选择。

您可以使用zip_get_num_entries获取存档中的文件数,然后使用zip_get_name获取特定文件的文件名。用于zip_fopen_index打开存档内的文件,zip_fread读取文件(并保存到磁盘或另一个 zip 存档),完成zip_fclose后关闭文件。如果要从存档中删除文件,请使用zip_delete.

继续对所有文件循环执行此操作,从最高索引开始到索引零。


至于 Windows 上的 libzip,请参见例如这个答案(或者如果它不起作用这个答案)。

于 2013-02-01T09:06:00.387 回答