【发布时间】:2011-01-20 08:24:33
【问题描述】:
我正在尝试使用多个 NSXMLParserDelegate 解析器解析一个 xml 树文件,但我正在处理下一个问题。
我的 XML 结构是这样的。
<Object1>
<Name>Ricky</Name>
<Surname>Woodstock</Surname>
<Adress>
<City>Los Angeles</City>
<State>California</State>
<Country>USA</Country>
</Adress>
<Items>
<Item>
<Id>1</Id>
<Description>Sports Bag</Description>
<Price>13.45</Price>
</Item>
<Item>
<Id>2</Id>
<Description>Baseball Cap</Description>
<Price>6.90</Price>
</Item>
</Items>
<Total>20.15</Total>
</Object1>
我的问题是,当我更改委托时,它开始解析不是在顶级标记中,而是开始解析第一个嵌套标记。
例如。
我开始使用解析元素的 XMLObject 解析器解析 XML
当它到达 Adresss 标签时,我将委托设置为 XMLAdressParser(并将 XMLAdressParser 的父级设置为 self 以返回),但 XMLAdressParser 开始在标签上解析。
几乎还有物品和物品标签。
我认为这是解析器定义的正常原因,但这就是问题所在:
代理有什么方法可以开始解析对应的标签,比如第一个?
提前感谢您的帮助。
塞尔吉奥
【问题讨论】:
-
为什么要使用多个代表?一个人可以处理 XML 的每一部分
-
我正在开发用于快速将 XML 转换为 NSObject 的通用委托,或者我正在尝试......
标签: iphone objective-c nsxmlparser