OC中的归档是将对象写入到本地的一个文件夹中,Java中的 ObjectInputStream 和 ObjectOutputStream 来进行操作的。当然在操作的这些对象都是需要实现一个接口:Serializable,同样的OC中操作的对象也是需要实现一个协议的<NSCoding>协议,其中,当遵守这两个协议的时候有两个需要实现的方法
- (void)encodeWithCoder:(NSCoder *)aCoder;
- (nullable instancetype)initWithCoder:(NSCoder *)aDecoder;
如果对多个对象归档的话,这就需要用到一个类 NSData 和 NSNutableData
1.接下来看一下,自定义类型的归档和解档操作
2.这里自定义了一个Person类型,实现了NSCoding协议,然后他有三个属性,
在Person.m文件中,我们需要实现协议中的两个方法:
initWithCoder
encodeWithCoder
这两个方法一个是用于归档操作时会调用的方法,还有一个是用于解档操作时会调用的方法
3.在ViewController中的归档和解档操作