Iphone TTXMLParser示例代码?
有人熟悉如何使用TTXMLParser吗。我在上面找不到任何文档或示例代码 是SAX还是DOM 它支持Xpath吗 我可以从元素中提取CDATA吗Iphone TTXMLParser示例代码?,iphone,objective-c,sdk,three20,Iphone,Objective C,Sdk,Three20,有人熟悉如何使用TTXMLParser吗。我在上面找不到任何文档或示例代码 是SAX还是DOM 它支持Xpath吗 我可以从元素中提取CDATA吗 我有一个应用程序已经使用了几个Three20模块,如果不得不使用另一个解析器,那将是一个遗憾 我找到的关于TTXMLParser的主要文档位于。这里的注释概述了TTXMLParser的功能 TTXMLParser不应该像您所想的那样被认为是一个XML解析器——从这个意义上讲,诸如“它是SAX还是DOM”和“它是否支持XPath”之类的问题并不直接适用
我有一个应用程序已经使用了几个Three20模块,如果不得不使用另一个解析器,那将是一个遗憾 我找到的关于TTXMLParser的主要文档位于。这里的注释概述了TTXMLParser的功能 TTXMLParser不应该像您所想的那样被认为是一个XML解析器——从这个意义上讲,诸如“它是SAX还是DOM”和“它是否支持XPath”之类的问题并不直接适用。相反,可以将TTXMLParser视为一个方便的类,以获取XML并将其转换为Objective-C对象树。例如,此XML节点:
<myNode attr1="value1" attr2="value2" />
将变成Objective-CNSDictionary
节点,该节点将键“attr1”映射到值“value1”,将键“attr2”映射到键“value2”
TTXMLParser在内部使用NSXMLParser(基本上是SAX)来构建它的树,但是作为TTXMLParser的用户,您不必做任何类似SAX的事情
因此,不,您不会得到一个可以执行XPath查询的XML文档。相反,您将得到一个Objective-C对象树。如果那是你想要的,太好了;如果您想要一个带有XPath的传统XML解析器,我目前正在开发一个同时使用Three20和TouchXML
的项目TouchXML
支持XPath
我同意很难找到TTXMLParser的示例代码。Three20的TTTwitter
示例过去使用TTXMLParser
(实际上,tturlxmresponse
,它反过来使用TTURLParser),但在某个时候它被改为使用TTURLJSONResponse
,这是一个遗憾,因为这是他们唯一的XML示例
您仍然可以看到旧的基于XML的示例代码。具体地说,请查看文件底部附近的-[requestDidFinishLoad://code>函数,例如,一些代码采用TTURLXMLResponse
,查询其rootObject
成员,然后沿着生成的对象树向下走