2011-06-19 39 views
3

我打算开发一个Iphone应用程序,它将与我的SOAP Web服务进行通信,它是一种无状态的Web服务,它将每次在XML中传递整个状态(几百问题和他们的答案,types..etc。预计将是一个200-300kb的XML文件,我猜)Iphone大XML文件解析效率

我打算使用WSDL2ObjC。每次用户点击下一步,它将发送当前的XML,接收新的XML并解析整个XML并在屏幕上打印最新的问题。

我不知道是不是轻松一点iPhone每次点击都可以轻松接收和解析整个200-300KB大小的XML。

我的问题是;在内存和CPU方面我能有什么问题吗?并分我要小心,这解析器我应该use..etc

TNX

+2

对于解析大型XML文档,请使用SAX解析器,而不是DOM解析器。 – Asaph

+0

我可以在内存中保存200-300kb xml并解析它吗? – Spring

回答

2

显然,对于大文件,你需要使用SAX解析器,而不是DOM。

iOS SDK包含通常用于执行SAX解析的Objective-C类(NSXMLParser)。但是如果您关心性能,内存使用情况和CPU,可以将它与其他解决方案(如libxml2 C库或其他)进行比较。 请参阅this article,比较可用于iOS的现有XML解析库及其性能。它应该回答你的问题。

+0

tnx如何将libxml2添加到我的项目中? – Spring

+0

只需在项目中添加libxml2.dylib,就像添加任何其他库或框架一样(添加框架 - >在(长)列表中选择libxml2.dylib) – AliSoftware

+0

200-300KB在内存中保存的相对较大? – Spring