我正在开发一个连接到后端服务器的iPhone应用程序。它需要通过多次请求与它进行多次通信。我正在发送HTTP消息,但我希望收到更复杂的响应,我可以用它来解析。据说,我可以为服务器的响应提供任何类型的格式,所以我的问题是:对于Objective-C / Cocoa使用/解析哪一个会更容易(甚至更快),并在某种字典中进行转换?
我知道这有点主观但我仍然认为这是一个有效的问题,一些编程语言只是对某些格式有更多支持而对其他格式则更少。
答案 0 :(得分:2)
从Cocoa的角度来看,最简单的格式是property list,因为Cocoa可以将其本地解析为字典或数组。
您可以使用NSDictionary的+dictionaryWithContentsOfFile:
和+dictionaryWithContentsOfUrl:
将plist文件读入字典。
如果你的plist数据不在文件中,你也可以将包含plist数据的NSData对象转换为带有+[NSPropertyListSerialization dataFromPropertyList:format:errorDescription:]
的字典,或者将NSString转换为带有-[NSString propertyList]
的字典。
答案 1 :(得分:2)
PList是一个很好的答案并且非常实用,但是许多服务器端人员会更容易生成JSON - TouchJSON是一个非常好的iPhone的JSON解析器。
答案 2 :(得分:1)
虽然有plist gem for ruby,但JSON或(原始)XML在Apple世界之外更受欢迎。例如,大多数JavaScript库都设置为说出其中一个或两个。
因此,如果你只是与iPhone交谈,那么plist可能是一个不错的选择,但是否则你应该考虑使用JSON(或XML)。