В настоящее время я использую этот блог, где он использует пользовательские классы, использующиеся в NSKeyedArchiver. Все кажется правильным, но мне интересно, как получить разные экземпляры «ученика».Поиск различных экземпляров в NSKeyedArchiver
http://keeptheseinmind.blogspot.com/2011/10/nskeyedarchiver-tutorial.html
В этом учебнике, новые экземпляры пользовательского класса «студентов» создаются каждый раз, когда приложение завершается. И я предположил, что в NSKeyedArchiver есть много таких «ученических» экземпляров, но я могу получить доступ только к одному из них.
Сохранение на диск
- (void)saveDataToDisk {
NSString *path = @"~/Documents/data";
path = [path stringByExpandingTildeInPath];
NSMutableDictionary *rootObject;
rootObject = [NSMutableDictionary dictionary];
[rootObject setValue:student forKey:@"student"];
[NSKeyedArchiver archiveRootObject:rootObject toFile:path];
}
Загрузка с диска
- (void)loadDataFromDisk {
NSString *path = @"~/Documents/data";
path = [path stringByExpandingTildeInPath];
NSMutableDictionary *rootObject;
rootObject = [NSKeyedUnarchiver unarchiveObjectWithFile:path];
if ([rootObject valueForKey:@"student"]) {
student = [rootObject valueForKey:@"student"];
}
}
EDIT:
Я ошибаюсь, экземпляры каждый раз перезаписываться друг друга, каждый раз, приложение прекращается. Интересно ...
Однако моя цель состоит в том, чтобы создать много примеров «учеников» в одном или нескольких NSKeyedArchiver. Любые идеи очень приветствуются.
Я хотел бы использовать массив методов студентов. Тем не менее, я хотел бы построить количество студентов сверхурочно; который, не обязательно будет готов, когда мы захотим его заархивировать. Сначала я хотел бы видеть студентов в файле archiveData, а затем добавить ученика. Я просто попытался сделать это, разобрав его (если файл существует), затем архивируйте поверх этого, но кажется, что сейчас ничего не сохраняется. – freedom
Однако, с моими потребностями, просто попробовал новую методологию ключей! Мучо Грасиас! :) Отличная идея! – freedom
и ... после получения этого, я вернулся в NSMutableArray и получил его работу :)! Во-первых, я установил NSMutableArray в rootObject и просто использовал метод addObject. в этом случае не должно быть ключей. – freedom