Мне, должно быть, не хватает чего-то очевидного здесь, но я не могу найти ответ. В основном, у меня был код, который написал файл в каталоге документов приложения. Этот код выглядитЗапись в каталог в каталоге документов приложения
- (NSString *)applicationDocumentsDirectory {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
return documentsDirectory;
}
// Действительное написания кода в другом методе
NSString *manifestPath = @"manifest.txt";
[manifestData writeToFile:manifestPath options:NSDataWritingAtomic error:&error];
Так это работает отлично. Теперь я хочу создать новую папку в каталоге документов и записать в эту папку. Поэтому для создания моей новой папки я делаю:
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL isDir;
NSString *directoryPath = [[self applicationDocumentsDirectory] stringByAppendingPathComponent:@"testDir"];
NSError *error = nil;
if (![fileManager fileExistsAtPath:directoryPath isDirectory:&isDir]) {
if (!isDir) {
[fileManager createDirectoryAtPath:directoryPath withIntermediateDirectories:NO attributes:nil error:&error];
}
}
Эта часть работает нормально.
Часть, которая не работает, - это когда я хочу создать свой новый манифест, чтобы перейти в этот каталог и записать в этот каталог. Я попытался
NSString *manifestPath = [[[self applicationDocumentsDirectory] stringByAppendingPathComponent:directoryPath] stringByAppendingPathComponent:@"manifest.txt"]];
или
NSString *manifestPath = [[self applicationDocumentsDirectory] stringByAppendingPathComponent:[NSString stringWithFormat:@"%@/manifest.txt", directoryPath];
Я пропускаю что-то с тем, как пути, или каталогов работы? Я продолжаю получать ошибку Cocoa 4. Когда я распечатываю путь, мой путь тоже выглядит правильным. (каталог симулятора iOS/testDir/manifest.txt)
Я что-то пропустил? Благодарю.