2014-02-07 23 views
0

我正在編寫iOS應用程序,我需要解析XML文件中的一些值。 我使用SMXMLDocument解析XML,一切正常,但有些標籤返回空值。我注意到那些標籤是CDATA,經過一些研究,我發現了一些方法來解決這個問題。問題是所有這些方法引用NSXMLParser,我無法理解如何使用SMXMLDocument來完成此操作。 我的應用程序中的代碼與this page的代碼非常相似(可以說完全相同)。 你能幫我嗎? 謝謝使用iOS中的SMXMLDocument從XML獲取CDATA

回答

0

顯然SMXMLDocument在解析文檔時不符合所有NSXMLParser委託函數。你將不得不手動修改SMXMLDocument.m並添加功能:

- (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock 
{ 

} 

內部的功能應該是非常相似的foundcharacters功能,你只需要把你弄並將其轉換成一個字符串NSData。儘管謹慎編碼,但CData數據並不總是UTF8。

+0

謝謝你的回答。 不幸的是,我似乎無法使用SMXMLDocument使其工作,所以我只使用NSXMLParser及其方法。 – halfblood17