3

我正在开发一个连接到后端服务器的 iPhone 应用程序。它需要通过多次请求与其多次通信。我正在发送 HTTP 消息,但我想接收可以以某种方式解析的更复杂的响应。假设,我可以为来自服务器的响应提供任何类型的格式,所以我的问题是:对于 Objective-C/Cocoa 使用/解析哪个更容易(甚至更快),并在某种字典中转换?

我知道这有点主观,但我仍然认为这是一个有效的问题,一些编程语言对某些格式的支持更多,而对其他格式的支持更少。

4

3 回答 3

2

从 Cocoa 的角度来看,最简单的格式是属性列表,因为 Cocoa 可以将其本地解析为字典或数组。

您可以使用 NSDictionary+dictionaryWithContentsOfFile:+dictionaryWithContentsOfUrl:将 plist 文件读入字典。

如果您的 plist 数据不在文件中,您还可以将包含 plist 数据的 NSData 对象+[NSPropertyListSerialization dataFromPropertyList:format:errorDescription:]转换为带有-[NSString propertyList].

于 2010-01-22T18:38:32.310 回答
2

PList 是一个很好的答案并且非常有用,但是许多服务器端的人会更愿意生成 JSON - TouchJSON 是一个非常好的 iPhone 的 JSON 解析器。

于 2010-01-22T20:58:12.610 回答
1

虽然 ruby​​ 有一个plist gem,但 JSON 或(原始)XML 在 Apple 世界之外更受欢迎。例如,大多数 JavaScript 库都设置为使用其中一种或两种。

因此,如果您只与 iPhone 通话,plist 可能是一个不错的选择,但否则您应该考虑使用 JSON(或 XML)。

于 2010-01-26T22:03:14.657 回答