Я пытаюсь записать очень простую текстовую строку в каталог моих документов и работать оттуда, чтобы позже сохранить другие файлы и т. д.
В настоящее время я застрял с этим, не пишу что-нибудь в моем каталоге документов
(в моем viewDidLoad
)
NSArray *pathArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)
NSString *documentsDirectory = [pathArray objectAtIndex:0];
NSString *textPath = [documentsDirectory stringByAppendingPathComponent:@"file1.txt"];
NSString *text = @"My cool text message";
[[NSFileManager defaultManager] createFileAtPath:textPath contents:nil attributes:nil];
[text writeToFile:textPath atomically:NO encoding:NSUTF8StringEncoding error:NULL];
NSLog(@"Text file data: %@",[[NSFileManager defaultManager] contentsAtPath:textPath]);
Это то, что распечатывается:
2011-06-27 19: 04: 43.485 MyApp [5731: 707] Текстовый файл data: (null)
Если я попробую это сделать, он также распечатает null:
NSLog(@"My Documents: %@", [[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsDirectory error:NULL]);
Что я пропустил или делаю неправильно при записи в этот файл? Может быть, мне нужно что-то изменить в моем plist или какие-то фреймворки / импорт?
Спасибо
[РЕДАКТИРОВАТЬ] Я передал объект NSError через writeToFile и получил следующую ошибку:
Ошибка: Error Domain = NSCocoaErrorDomain Code = 512 «Операция не может быть завершена. (Ошибка какао 512.)» UserInfo = 0x12aa00 {NSFilePath = / var / mobile / Applications / 887F4691-3B75-448F-9384-31EBF4E3B63E / Documents / file1.txt, NSUnderlyingError = 0x14f6b0 «Операция не может быть завершена. Это не каталог»}
[РЕДАКТИРОВАТЬ 2] Это отлично работает на симуляторе, но не на моем телефоне: /