Ошибка при создании файла - PullRequest
1 голос
/ 04 июня 2009

Я пытаюсь выполнить следующие задачи с файлами, но я застрял.

Вот код:

NSString* aStr = @"Hello World!";

NSData* aData;
aData = [aStr dataUsingEncoding: NSASCIIStringEncoding];

NSFileManager *fileManager = [NSFileManager defaultManager];

//destination is NSString which Contains the absolute address

if ([fileManager fileExistsAtPath:destination]) 
{
      NSLog(@"File Exists!");
}
else
{
     BOOL statusOfFile=[fileManager createFileAtPath :destination contents:aData attributes:nil];
}

if(statusOfFile)
     printf("\n\nFile Created!");
else
     printf("\n\nError in File creation!");

Я не могу создать файл - значение statusOfFile равно NO.

Я пробовал этот код в GNU, и он отлично работает - проблема существует только с Xcode.

Кто-нибудь может сказать мне, почему?

Кто-нибудь может помочь? Спасибо.

Ответы [ 2 ]

6 голосов
/ 04 июня 2009

Возможно, вашим пунктом назначения является неверный путь на iPhone. Если вы хотите иметь возможность записи в файл в изолированной папке «Documents» ваших приложений, попробуйте следующий код:

+ (NSString *)dataFilePath {
  NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, 
                                                       NSUserDomainMask, YES);
  NSString *documentsDirectory = [paths objectAtIndex:0];
  NSString *filename = [documentsDirectory stringByAppendingPathComponent:@"Filename.plist"];

  return filename;
}

@end
1 голос
/ 04 июня 2009

Для доступа и хранения файлов на iPhone я рекомендую прочитать this .

Эрика Садун также написала хороший коротышка о доступе к файлу в комплекте приложений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...