我有一个二元plist的plist。
在使用之前我是否需要转换它?或者我的应用程序可以读取plist吗?
答案 0 :(得分:6)
使用+[NSDictionary dictionaryWithContentsOfURL:]
。它可以理解二元plist。
修改强>
正如Peter Hosey指出的那样,只有当根元素是字典时才会有效。如果根元素是数组,则可以使用+[NSArray arrayWithContentsOfURL:]
。
答案 1 :(得分:0)
更普遍的解决方案是使用NSPropertyListSerialization,正如Vladimir在他删除的答案中所建议的那样。它既可以序列化(从对象生成plist数据)又可以反序列化(从plist数据中重新创建一个对象树)。
无论根元素的类型如何,它总是能够解析任何有效的plist,二进制或其他;然后,您可能希望检查它返回的对象,以确保它是您期望的类型。