Запишите данные в файл, не удаляя старое содержимое в iPhone - PullRequest
0 голосов
/ 11 сентября 2011

Я хочу записать данные в файл .txt без замены его старого содержимого. Я переместил файл из NSMainBundle в каталог документов. Я могу записать файл, используя код

NSData *data=[NSKeyedArchiver archivedDataWithRootObject:recentMainArray];
NSFileHandle *myHandle = [NSFileHandle fileHandleForUpdatingAtPath:filePath];
[myHandle seekToEndOfFile];
[myHandle writeData:data];
[myHandle closeFile];

Но когда я пытаюсь отобразить содержимое файла, у меня нет никаких данных в этом. Файл также существует в этом пути. Это следующий код, который я использую для отображения содержимого.

NSFileManager *manager = [NSFileManager defaultManager];

// filePath -> путь к файлу каталога документов

if([manager fileExistsAtPath:filePath]) {

        NSMutableArray *savedArray = [[NSMutableArray alloc] initWithContentsOfFile:filePath];
        NSMutableArray *storedRecentID = [savedArray objectAtIndex:0];
        NSMutableArray *storedRecentName = [savedArray objectAtIndex:1];
        NSLog(@"ID:%@",[savedArray objectAtIndex:0]);
        NSLog(@"Name:%@",[savedArray objectAtIndex:1]);

} 
else {
        NSLog(@"file not found, save something to create the file");
}

"null", который выводится как результат для этих двух nslogs.

Пожалуйста, пусть кто-нибудь разрешитЯ знаю решение этой проблемы. К вашему сведению, я использую симулятор для тестирования, это создает проблему. Пожалуйста, предложите мне решение. Я много искал и не могу найти решение.

Спасибо всем заранее

1 Ответ

2 голосов
/ 11 сентября 2011

Считайте данные в некоторую изменчивую структуру (словарь, массив, строку) и затем добавьте ваши новые данные в ту же самую строку.Теперь запишите данные в тот же путь.Таким образом, новые приложенные данные будут записаны в файл.

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