2011-06-19 92 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