2012-05-21 51 views
0

我剛剛實現了我的第一個XmlParser對象(MyParserObj),它依賴於NSXMLParser對象。 該解析器被嵌入在tableviewControllerMyTableViewController)中,並且它開始解析MyTableViewControllerviewDidLoad方法。Iphone解析大型Xml文檔

好的。這工作得很好。雖然它是一個小的Xml文件!我想知道在處理大型Xml文件時是否應該選擇不同的方法?解析大型xml文檔時內存是否會受到影響?

UPDATE

真正的問題我想了解的是過程的流程:

我把幾個斷點現在,它看起來像這樣:

  • 應用程序第一次接觸(在MyTableViewController的viewDidLoad方法中)[MyParserObj parseXMLFileAtURL:path]並開始分析Xml文檔;
  • 該應用程序完成解析整個Xml文檔(parserDidEndDocument ..);
  • tableviewController開始填充其tableView單元格(cellForRowAtIndexPath ..);

除了選擇一個或多或少的時間/內存消耗的XmlParser(在你建議的那些之間),上述步驟將會是相同的嗎?

如果是肯定的,那麼在解析器完成該特定元素後立即開始填充單元格是否正確?我該怎麼做?

感謝

盧卡

回答

2

在iPhone設備上,您沒有MAC上的NSXMLDocument,它將整個XML文檔讀入內存。有許多XML Parser類可用,您可以在下面的鏈接中找到它們。

​​

本教程雷Wenderlich是什麼ü需要閱讀知道哪些XML閱讀器是最適合你的應用程序。

對於我自己的應用程序,我用SMXMLDocument,你可以在這裏讀到它: http://nfarina.com/post/2843708636/a-lightweight-xml-parser-for-ios