此代码是Core Data的一部分。 URLForDirectory ....方法不能在iOS< 4所以我需要知道一些其他方法/对象来调用。我还会提供文档以供将来参考。谢谢
/**
Returns the URL to the application's Documents directory.
*/
- (NSURL *)applicationDocumentsDirectory
{
return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
}
答案 0 :(得分:46)
另一种解决方案是使用-[NSFileManager URLsForDirectory:inDomains:]
方法并从返回的NSArray中获取路径:
目标-C:
NSArray *paths = [[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask];
NSURL *documentsURL = [paths lastObject];
夫特:
let paths = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
let documentsURL = paths[0] as! NSURL
iOS 4.0 +
支持此功能答案 1 :(得分:41)
您可以通过NSSearchPathForDirectoriesInDomains
foundation function获取文档路径,如下所示:
NSArray *searchPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentPath = [searchPaths objectAtIndex:0];
这适用于iOS 2 +。
答案 2 :(得分:15)
Swift 3
let documentsUrl = FileManager.default.urls(for: .documentDirectory, in:.userDomainMask).first!
答案 3 :(得分:6)
这是Swift 2.2版本:
let paths = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
let filePath = paths[0].URLByAppendingPathComponent("filename")