10
你如何知道你是否需要使用NSArchiver或NSKeyedArchiver?有什么不同?NSArchiver与NSKeyedArchiver
你如何知道你是否需要使用NSArchiver或NSKeyedArchiver?有什么不同?NSArchiver与NSKeyedArchiver
NSArchiver
支持无钥匙编码方法,如–encodeObject:
或–decodePoint
,而NSKeyedArchiver
支持基于密钥的编码方法,如–encodeObject:forKey:
或–decodePointForKey:
。主要区别在于,在存档器上,您需要以与编码完全相同的方式解码内容。每个密钥只能解码一次。另一方面,键控归档器不会限制您的任何顺序,您可以多次自由解码同一个对象。
只要可能,请使用NSKeyedArchiver
。它更新,可能最终将取代非基于密钥的变体。
此外,NSArchiver不适用于iPhone应用程序。 – 2010-09-19 10:09:42