允许在iPhone上创build文件夹

在我们挖了一半之后,我发现我没有创build文件夹的权限,那么如何获得创build文件夹的权限呢?

[[NSFileManager defaultManager] createDirectoryAtPath:[NSString stringWithFormat:@"%@/%@",downloadLocation,kAmazonCatalogsPrefix] withIntermediateDirectories:YES attributes:nil error:&error]; Error Domain=NSCocoaErrorDomain Code=513 "The operation couldn't be completed. (Cocoa error 513.)" UserInfo=0x1f18a8b0 {NSFilePath=/var/mobile/Applications/AB570058-4E4A-41B2-9E40-5C93316D6307/eCatalogs, NSUnderlyingError=0x1f18a830 "The operation couldn't be completed. Operation not permitted"} 

您无法修改已编译的应用程序包文件夹的内容。 这是因为该包是编译的应用程序。 这可以防止恶意软件在安装后修改应用程序的可能性。

在运行时生成的文件应保存到DocumentsTempCache文件夹中。 这些文件夹只能用于您的应用程序。 没有其他应用程序可以访问这些文件夹的内容。

示例代码:

 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSError *error; [[NSFileManager defaultManager] createDirectoryAtPath:[documentsDirectory stringByAppendingPathComponent:@"yourFolderName"] withIntermediateDirectories:NO attributes:nil error:&error]; 

检查下面的SWIFT答案:

 var paths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as String [NSFileManager.defaultManager().createDirectoryAtPath(paths.stringByAppendingPathComponent("Hello"), withIntermediateDirectories: false, attributes: nil, error: nil)] println(paths)