我正在寻找几天的库,它只需要将压缩包中的所有文件移动到C++中的另一个库中。我找到了libzip,但它只对一些文件更好,因为你知道它们的名字。我不关心归档文件A和归档文件B之间的步骤,只要不占用太多时间即可。(如果可能,它将删除其临时文件夹中的文件)。我更喜欢便携式图书馆。
谢谢你!
发布于 2013-02-01 17:06:00
Libzip可能是最好的选择。
您可以使用zip_get_num_entries获取归档文件中的文件数,然后使用zip_get_name获取特定文件的文件名。使用zip_fopen_index打开归档中的文件,使用zip_fread读取文件(并保存到磁盘或另一个压缩归档),完成后使用zip_fclose关闭文件。如果您想要从存档中删除文件,请使用zip_delete。
继续在循环中对所有文件执行此操作,从最高索引开始一直到索引0。
至于Windows上的libzip,请参阅例如this answer (或者如果它不能工作this one)。
https://stackoverflow.com/questions/14642640
复制相似问题