我怎么读一个plist?

时间:2010-11-01 15:18:22

标签: iphone cocoa ios4 plist

我有一个二元plist的plist。

在使用之前我是否需要转换它?或者我的应用程序可以读取plist吗?

2 个答案:

答案 0 :(得分:6)

使用+[NSDictionary dictionaryWithContentsOfURL:]。它可以理解二元plist。

修改

正如Peter Hosey指出的那样,只有当根元素是字典时才会有效。如果根元素是数组,则可以使用+[NSArray arrayWithContentsOfURL:]

答案 1 :(得分:0)

更普遍的解决方案是使用NSPropertyListSerialization,正如Vladimir在他删除的答案中所建议的那样。它既可以序列化(从对象生成plist数据)又可以反序列化(从plist数据中重新创建一个对象树)。

无论根元素的类型如何,它总是能够解析任何有效的plist,二进制或其他;然后,您可能希望检查它返回的对象,以确保它是您期望的类型。