如何在iOS的文件管理器中压缩空文件夹?

时间:2014-01-28 13:41:36

标签: ios objective-c iphone nsfilemanager ssziparchive

我正在开发像文件管理器这样的应用程序。在这个我已经使用任何现有的文件夹创建了zip文件夹,它工作得很好。为此,我使用了SSZipArchive API。拉链后我通过邮件发送。它的工作正常。

现在,当我尝试压缩任何空文件夹时,它无法正常工作。意味着空文件夹不会拉链。

2 个答案:

答案 0 :(得分:0)

是的,看source code,方法+ createZipFileAtPath:withContentsOfDirectory:似乎只关心文件:

while ((fileName = [dirEnumerator nextObject])) {
    BOOL isDir;
    NSString *fullFilePath = [directoryPath stringByAppendingPathComponent:fileName];
    [fileManager fileExistsAtPath:fullFilePath isDirectory:&isDir];
    if (!isDir) {
        [zipArchive writeFileAtPath:fullFilePath withFileName:fileName];
    }
}

您有两种选择:

  1. 自己修复,然后在github上向作者发送拉取请求,为自己的工作做出贡献,让自己受益。
  2. 和它一起生活。目前尚不清楚zip文件中出现的空文件夹是如何出现问题的。

答案 1 :(得分:0)

在这样的目录中存储存根文件不是标准的事情。一些没有内容的文件。