如何多次解压同一个 zip 文件?

How to unzip the same zip file multiple times?

我正在开发一个 zip 提取器应用程序,如果我多次解压同一个 zip 文件,它应该提取像 myfile-1、myfile-2、myfile-3 这样的东西。 示例:当我解压缩时,我的桌面上有 sampleproject.zip,它应该类似于 sampleproject、sampleproject-1、sampleproject-2。 有什么建议么。 提前致谢!

根据您的评论,我建议您将文件解压缩到一个临时目录,然后将其内容移动到实际目录,同时处理任何名称冲突。大纲:

  1. 使用URLForDirectory:inDomain:appropriateForURL:create:error:创建一个适合解压的临时目录。您应该将 destinationPath 的 URL 传递给 appropriateForURL: 参数;这应该会为您提供一个与 destinationPath 在同一卷上的临时目录,从而将解压缩的项目放置在正确的位置 moves 而不是 copies .

  2. 解压到(1)返回的临时目录

  3. 现在使用 NSFileManager 调用遍历临时目录,将找到的每个项目移动到 destinationPath,根据需要重命名以避免名称冲突。
  4. 删除临时目录。

如果您在实施此算法时遇到问题,请提出一个新问题,显示您的代码,解释您的问题,并在 link 返回此问题以便跟进该线程。下一步肯定会有人帮助你。

HTH