XMl解析条件

时间:2010-10-21 13:23:46

标签: iphone

HI,所有,我不知道如何编写if和else条件以解析xml。 这就是我返回的xml的样子。

<?xml version="1.0"?>
<a><a1>A</a1></a>
<b><b1>B</b1></b>
<c><c1>C</c1></c>
<d><d1>D</d1></d>
<e><e1>E</e1></e>
<f><f1>F</f1></f>
<g><g1>G</g1></g>

我尝试了各种条件,但我无法正确浏览每个节点。

我应该如何编写

中的if / else条件
"-(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *) namespaceURI qualifiedName:(NSString *)qName
   attributes: (NSDictionary *)attributeDict
{
//if and else condition here

if([elementName isEqualToString:@"a"]) {
}
else if([elementName isEqualToString:@"b"]) {

 }
…………
}"

和“ - (void)解析器:(NSXMLParser *)解析器foundCharacters:(NSString *)string {}“

最后在这里

"-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
//if else condition here
if([elementName isEqualToString:@"a"]) {
}
else if([elementName isEqualToString:@"b"]) {

 }

……
}
"

我需要将返回的值从xml,例如A,B,C传递给NSSTring进行进一步编程。但我甚至无法解析它。

感谢 建议总是受到赞赏

1 个答案:

答案 0 :(得分:1)

与往常一样,NSXMLParser上的the documentation非常出色。您可能想要做的是实现委托方法parser:foundCharacters:并在节点内累积文本(即使用NSMutableString)。正如您所知,didStartElement:didEndElement:会告诉您何时进入和退出元素。从那里开始,只需将文本存储在合适的数据结构中即可进行进一步处理。