xcode – 编码NSMutableArray
我有一个包含各种NSString对象和变量的对象,我将这些对象和NSCoding归档到磁盘上的文件中,然后取消归档.到目前为止,一切都运作良好.
今天,我想在对象中添加一个NSMutableArray并尝试使用以下代码进行编码: [encoder encodeObject:myArray ForKey:@"myArray"]; 然后使用以下方法解码它: [self setMyArray:[decoder decodeObjectForKey:@"myArray"]]; 它似乎没有工作,虽然我没有在编码或解码本身中得到任何错误,但如果我尝试在从文件解码后修改数组的值,我会收到错误. 我确定我在这里做了一些完全错误的事情,但并不完全确定是什么.我想也许它可能与它没有在unarchive期间正确分配有关. 什么看起来明显是问题的根源? 解决方法
解码存档会为您提供不可变对象,无论它们在编码时是可变还是不可变.你没有做任何特别错误的事 – 它正如宣传的那样工作. 有关类似问题的另一个示例,请参阅this answer,以及解决方案: [self setMyArray:[[decoder decodeObjectForKey:@"myArray"] mutableCopy]; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- import – 如何在Swift中定义自定义UIGestureRecognizer?
- objective-c – bridged cast:__bridge_transfer vs __bri
- BB Flash5.70.3607
- XML的基本语法(XML实现html的网页布局的简单功能)
- flash – Facebook Logout Url
- 使用Playground快速练习Swift语法(汇总)
- 使用 IntraWeb (31) - IntraWeb 的 Xml 操作使用的是 Nativ
- ruby-on-rails – 如何使用Nokogiri导航DOM
- Oracle ORA-22908(NULL表值的参考)异常分析与解决方法
- ajax实现简单实时验证功能