Симулятор iPhone - Запись в файл / Проблемы с чтением - PullRequest
1 голос
/ 28 апреля 2010

Я много читал на iPhone для чтения / записи, и я считаю, что все, что у меня есть, правильно, но по какой-то причине оно работает не так, как должно.

код выглядит следующим образом

NSString *docsDirectory = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];
NSString *filePath = [docsDirectory stringByAppendingFormat:@"filename.rtf"];
NSFileManager *fileManager = [NSFileManager defaultManager];
if (![fileManager fileExistsAtPath:filePath])

Я зашел в папку «Документы имитатора iphone» для создаваемого приложения и добавил этот файл в качестве меры безопасности, и он по-прежнему не вызывает оператор if. Поэтому по какой-то причине он не находит это, что делает невозможным все мое письмо и чтение. Я даже пытался использовать функцию createFile в FileManager и не получил никаких результатов. Если мне нужно опубликовать больше кода чего-либо, дайте мне знать, но я полагаю, что все вышеперечисленное верно, это должно найти файл правильно. Заранее спасибо.

ОБНОВЛЕНИЕ: исправлено. Смешно простая ошибка. Спасибо всем.

Ответы [ 2 ]

3 голосов
/ 28 апреля 2010

Строка NSString, возвращаемая NSSearchPathForDirectoriesInDomains, не имеет конечной косой черты, поэтому созданный вами путь неверен. Чтобы добавить имя файла к использованию stringByAppendingPathComponent, который будет правильно обрабатывать разделители пути.

Чтобы создать файл Path, попробуйте:

NSString *filePath =[docsDirector stringByAppendingPathComponent:@"filename.rtf"];
0 голосов
/ 28 апреля 2010

Вы пытались использовать stringByAppendingPathComponent: вместо stringByAppendingFormat:. Если docsDirectory не содержит завершающий слеш, вы фактически создадите файл с именем /PATH/TO/Documentsfilename.rtf, а не /PATH/TO/Documents/filename.rtf.

...