iphone - 获取 iPhone 文档目录。 NSSearchPathForDirectoriesInDomains 仍然是唯一的方法吗?

标签 iphone cocoa-touch

NSSearchPathForDirectoriesInDomain 函数仍然是获取 iPhone 文档目录路径的最佳方法吗?我问这个问题是因为我看到的大多数主题都是去年的,而且这似乎仍然是获取 iPhone 上常用目录的一种相当麻烦的方式。您可能认为现在有一个方便的方法,类似于 NSBundle 的 bundlePathexecutablePath 等。

需要明确的是,这意味着调用“NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)”并获取索引为 0 的文档路径的数组。

最佳答案

Xcode中基于Core Data的应用程序模板提供了这种方法:

- (NSString *)applicationDocumentsDirectory {

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
return basePath;
}

因此,Apple 似乎继续支持以这种方式获取文档目录。我想,您可以将其放入一个类别中,但我发现将该方法包含在给定应用程序中需要在文档目录中工作的少数类中就足够了。如果您在各处执行大量文件操作,您可能会考虑稍微重构一下代码,将这些任务限制在一两个管理器类中。

至少对我来说,在我第三次或第四次说“嘿,获取文档目录是一件令人头疼的事情”时,我意识到有一些机会可以将文件处理转移到专门的类中。

关于iphone - 获取 iPhone 文档目录。 NSSearchPathForDirectoriesInDomains 仍然是唯一的方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1844603/

相关文章:

iphone - UIImage释放问题

ios - 选中 UITableView 时自动将行移动到底部

iphone - 在 iPhone 中检索 Outlook 联系人

iphone - 设置 UIButton 实例突出显示

cocoa - 使用 NSOperation main() 和 start() 方法中的哪一个

ios - 定制元素

objective-c - UIView:一个动画有多个变化

ios - 从 View 层次结构中删除 subview 并将其删除的正确方法是什么?

iphone - 如何读取崩溃日志?如何在系统库中查找应用程序崩溃的原因? EXC_CRASH (SIGABRT) 是什么意思?

iphone - 用于计算轴承(带半正矢函数)的 CLLocation 类别