如何在iOS上获取Unzip文件夹的唯一路径

时间:2012-11-12 02:48:03

标签: iphone objective-c ios xcode ipad

在iOS上:

如何修复解压缩文件的整个问题,获取唯一的路径名,在其他视图中使用此路径并在视图卸载后删除捕获文件?

2 个答案:

答案 0 :(得分:0)

使用mkdtmp创建一个唯一的临时目录(在unistd.h中声明),然后展开到该目录。

然后,如果您需要某个更具体的位置,请安全地移动 (例如,保证不会替换现有文件/目录)。如果您更喜欢Foundation API,那么-[NSFileManager replaceItemAtURL:withItemAtURL:backupItemName:options:resultingItemURL:error:]似乎能够移动。

答案 1 :(得分:0)

我建议您使用时间戳,将其存储在NSUserDefaults中。

在AppDelegate的applicationWillTerminate方法中,检查NSUserDefaults是否具有您设置的密钥(如果有),然后删除该文件,并删除密钥。

- (void)applicationWillTerminate:(UIApplication *)application
{
    if([[NSUserDefaults standardUserDefaults] objectForKey:@"KEY_FOR_PATH"] != nil)
    {
        [[NSFileManager defaultManager] removeItemAtPath:[[NSUserDefaults standardUserDefaults] objectForKey:@"KEY_FOR_PATH"] error:nil];
        [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"KEY_FOR_PATH"];
        [[NSUserDefaults standardUserDefaults] synchronize];
    }
}