为啥 XML 存储在 iOS 中不可用?
Posted
技术标签:
【中文标题】为啥 XML 存储在 iOS 中不可用?【英文标题】:Why is XML store not available in iOS?为什么 XML 存储在 iOS 中不可用? 【发布时间】:2011-01-16 11:52:57 【问题描述】:来自核心数据编程指南:
iOS:XML 存储在 ios 上不可用。
为什么这个不可用?是因为缺少某些 XML 类,还是需要太多的处理能力或 RAM?
【问题讨论】:
【参考方案1】:Apple 将是这方面的权威来源,所以我们只能猜测。
这可能是因为两个因素:XML 存储速度较慢(如 official documentation 中所述,主要是因为需要解析 XML 并且缺乏用于常见数据库操作的有效算法/数据结构)以及可能使用更多磁盘空间比 SQLite 存储(因为数据必须包含在标签中,而 XML 存储使用人类可读的数据表示)。
编辑: libxml2 在 iOS 上可用,因此 XML 解析功能(或缺乏)当然不是原因。
【讨论】:
“XML 存储使用人类可读的数据表示”并非总是如此。 Apple 可以将数据存储在包含二进制数据的任意 XML 结构中,而无需关心人类是否可以轻松读取它(相应的 MIME 类型将是application/xml
)。也就是说,我同意你的其他观点。
@BoltClock Apple 可以拥有,但 IIRC 他们没有。他们给出的拥有 XML 存储(在 Mac OS 上)的原因之一是该存储是人类可读的,因此对调试很有用。以上是关于为啥 XML 存储在 iOS 中不可用?的主要内容,如果未能解决你的问题,请参考以下文章
为啥这个 Javascript 库在浏览器中可用,但在 PhoneGap 中不可用?
为啥 IndexedDB 在 node.js 中不可用? [关闭]
为啥“构建配置...”在带有 QT eclipse 插件的 Eclipse CDT 中不可用?
为啥在测试类中设置的 spring.profiles.active 在实际测试类的环境属性中不可用?
为啥常见的 Erlang 应用程序(Common Test、Dialyzer、leex、yecc 等)在 `erl` shell 中不可用?