属性列表
在OS X的Cocoa,NeXTSTEP和GNUstep编程框架中,属性列表(Property List)文件是一种用来存储序列化后的对象的文件。属性列表文件的文件扩展名为.plist,因此通常被称为plist文件。 Plist文件通常用于储存用户设置,也可以用于存储捆绑的信息,该功能在旧式的Mac OS中是由资源分支提供的。 表达由于Plist中存储的数据是抽象的,其采用的文件格式可以不止一种。NeXTSTEP只使用一种格式,而稍晚的GNUstep和OS X框架导入了不同的文件格式。 NeXTSTEPNeXTSTEP系统中,Plist被设计为人类可读的,并可以手工修改,故采用了类似于编程语言的语法将数据序列化为ASCII数据。 字符串被表示为: "This is a plist string" 二进制数据被表示为: < [文本形式的十六进制数] > 数组被表示为: ( "1", "2", "3" ) 字典则被表示为: { "键" = "值"; ... } NeXT的plist格式的一个限制是它不能表示NSValue对象(即数,布尔值等)。 GNUstepGNUstep采用了NeXTSTEP的格式,并添加了少许特性。它支持NSValue对象(以普通ASCII码表示),支持NSDate(序列化成<*DYYYY-MM-DD HH:MM:SS timezone>的格式)。 GNUstep也可以读写OS X使用的Plist格式。 Mac OS XMac OS X在支持读取NeXTSTEP格式的同时,并不鼓励使用它,而是推荐使用Apple导入的两种新格式。 Mac OS X 10.0中,NeXTSTEP的格式被认为是不被推荐的,并导入了一种新的XML格式,其由Apple定义的公开DTD所规范化。XML格式支持非ASCII格式,亦可存储NSValue对象。但与GNUstep的ASCII plist格式不同,Apple的NeXTSTEP格式的plist文件不支持这两种特性。 由于XML文件在储存时不是最有空间效率的,Mac OS X 10.2导入了一种新的格式,它将plist文件存储为二进制文件。从Mac OS X 10.4开始,这是偏好设置文件的默认格式。
可以使用任何文本编辑器对XML格式的plist进行更改,同时,Apple提供了“Property List Editor”应用程序(作为Apple Developer Tools的一部分安装),它是一个树状的查看器与编辑器,并可以处理二进制格式的plist。 对于XML格式,XML标签和相关Foundation类、Core Foundation类型、数据储存格式的关系如下表所示:
参考文献
参见外部链接
第三方编辑工具
|
Portal di Ensiklopedia Dunia