首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么苹果使用.plist文件?

问为什么苹果使用.plist文件?
EN

Stack Overflow用户
提问于 2011-11-08 03:17:54
回答 3查看 977关注 0票数 2

为什么苹果使用.plist文件?

Windows使用.ini文件,它可能不太灵活,但也占用较少的空间,这与JSon占用的空间较少的原因相同。

他们甚至可以使用JSON进行配置,它至少一样容易解析,支持他们需要的值类型(dict等)。并且占用的空间最小。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-08 04:16:35

在NeXTSTEP中找到的original property list format看起来很像JSON,但语法略有不同。当NeXTSTEP成为Mac时,这种格式被您今天看到的XML版本所取代。新的格式比旧的格式有一些改进,你可以在那个链接中读到。

属性列表可以包含JSON (和INI文件)无法包含的几种数据类型:指定为实数(浮点)或整数的数字、日期和Base64编码的二进制数据。而且,直到Mac发布之后很久,JSON才成为documented publicly。

MacOS10.2和更新的版本包括一种比XML更节省空间的二进制plist格式,并且plist文件可以在两者之间进行无损转换。

票数 3
EN

Stack Overflow用户

发布于 2011-11-08 03:24:46

因为NeXTSTEP使用了它们,所以苹果也采用了它们。

Property List Wiki Page

在NeXTSTEP下,属性列表被设计为人类可读和手动编辑,并以一种有点像编程语言的语法序列化为ASCII码。

NeXTSTEP使用一种格式来表示属性列表,随后的GNUstep和Mac框架引入了不同的格式。

虽然Mac也可以读取NeXTSTEP格式,但苹果将其搁置一边,转而采用自己的两种新格式。

在MacOSX10.0中,不推荐使用NeXTSTEP格式,并引入了一种新的格式,其中包含一个由苹果公司定义的公共DTD。XML格式支持非ASCII字符和存储NSValue对象(与GNUstep的ASCII属性列表格式不同,苹果的ASCII属性列表格式不支持)。但是,由于XML文件不是最节省空间的存储方式,Mac OS X 10.2引入了一种新的格式,其中属性列表文件存储为二进制文件。从MacOSX10.4开始,这是首选项文件的默认格式。

票数 2
EN

Stack Overflow用户

发布于 2011-11-08 03:23:03

我相信这是NeXTSTEP时代遗留下来的事情之一……至于为什么他们更喜欢使用它,这可能是因为他们可以。;-)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8041384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档