Подтвердить что ты не робот

Как получить URL-адрес для каталога документов приложения iPhone

Этот код является частью Core Data. Метод URLsForDirectory.... не запускается на iOS < 4, поэтому мне нужно знать некоторые другие методы/объекты для вызова. Я также буду использовать документацию для дальнейшего использования. Спасибо вам

/**
 Returns the URL to the application Documents directory.
*/
- (NSURL *)applicationDocumentsDirectory
{
    return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
}
4b9b3361

Ответ 1

Вы можете получить путь к документу через NSSearchPathForDirectoriesInDomains функцию основания следующим образом:

NSArray *searchPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentPath = [searchPaths objectAtIndex:0];

Это будет работать на iOS 2 +.

Ответ 2

Альтернативным решением будет использование метода -[NSFileManager URLsForDirectory:inDomains:] и выбор пути из возвращаемого NSArray:

Objective-C:

NSArray *paths = [[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask];
NSURL *documentsURL = [paths lastObject];

Swift:

let paths = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
let documentsURL = paths[0] as! NSURL

Это поддерживается в iOS 4.0 +

Ответ 3

Swift 3

let documentsUrl = FileManager.default.urls(for: .documentDirectory, in:.userDomainMask).first!

Ответ 4

Вот версия Swift 2.2:

let paths = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)
let filePath = paths[0].URLByAppendingPathComponent("filename")