У меня есть объект, содержащий различные объекты и переменные NSString, которые я вам NSCoding архивирует в файл на диске, а затем и unarchive. Пока все работает отлично.Кодирование NSMutableArray
Сегодня я хотел бы добавить NSMutableArray к объекту и пытался кодировать с помощью:
[encoder encodeObject:myArray ForKey:@"myArray"];
, а затем расшифровать его с помощью:
[self setMyArray:[decoder decodeObjectForKey:@"myArray"]];
Это не кажется, работает , и пока я не получаю никаких ошибок в самой кодировке или декодировании, я получаю сообщение об ошибке, если попытаюсь изменить значение массива после декодирования из файла.
Я уверен, что я делаю что-то совершенно неправильное здесь, но не совсем уверен в чем. Я думаю, возможно, это может иметь какое-то отношение к ней, которое не будет правильно распределено во время разборки.
Что-нибудь выглядит явно очевидным как источник проблемы?
возможно дубликат [NSKeyedArchiver и NSKeyedUnarchiver с NSMutableArray] (http://stackoverflow.com/questions/10391803/nskeyedarchiver-and -nskeyedunarchiver-with-nsmutablearray) – Caleb
Согласен. Это, по сути, та же проблема. Я не осознавал этого, когда создал его. Честно говоря, я забыл, что раньше у меня была аналогичная проблема! Из этих двух я считаю, что этот вопрос гораздо более краткий и имеет простой прямой ответ, в то время как вариация от нескольких недель назад более детальная и включает в себя другие связанные с этим проблемы, которые могут вызвать эту проблему. Спасибо всем, кто помог обоим! :) –
Ha! Я даже не заметил, что вы задали дублированный вопрос. ;-) – Caleb