невозможно прочитать файл, измененный во время выполнения в целевой c / iPhone - PullRequest
0 голосов
/ 03 февраля 2012

Я пытаюсь прочитать файл и изменить содержимое файла для моего приложения. вот мой код в методе viewWillAppear:

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];

    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"myfile" ofType:@"txt"];
    NSFileHandle *file;
    NSData *databuffer;
    file = [NSFileHandle fileHandleForReadingAtPath:filePath];
    if (file == nil)
        NSLog(@"Failed to open file");
    [file seekToFileOffset: 0];
    databuffer = [file readDataToEndOfFile];
    NSString *strData = [[NSString alloc]initWithData:databuffer encoding:NSUTF8StringEncoding];

    NSLog(@"%@", strData);
    [file closeFile];
    file = nil;
    filePath = nil;
    databuffer = nil;

}

здесь содержимое myfile.txt:

test

здесь появляется результат nslog после представления:

2012-02-03 13:46:01.165 iBadah[9629:207] test

Но проблема в том, что когда я изменяю содержимое myfile.txt (приложение все еще работает):

test test

Результат не изменяется на фактическое содержание myfile.txt, вместо этого он показывает старое содержимое:

2012-02-03 13:46:21.335 iBadah[9629:207] test

Таким образом, сценарий состоял в том, что я нажимаю на представление (затем запустится viewWillAppear) показ результатов, я перехожу в другое представление, изменяю содержимое myfile.txt и возвращаюсь к первому представлению (чтобы снова запустить viewWillAppear ) и результат не изменится.

Кто-нибудь может дать мне обходной путь для получения фактического содержимого myfile.txt? Благодаря.

...