我正在尝试将XML文件解析为NSMutableArray并将其显示到tableview。问题是当它解析时,它会在NSMutableArray中添加2次解析结果。这导致tableview显示结果两次。 (在tableview中有2行)
我的问题是:如何显示一个结果而不是两次相同的结果?
XML的文件:
<something>test1234567test</something>
代码:
-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{ if([currentElement isEqualToString:@"something"])
[currentname appendString:string];
[mutarray_xml addObject:currentname];
}
我试过了:
-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if([currentElement isEqualToString:@"something"])
{
[currentname release];
}
}
答案 0 :(得分:2)
This post on Big Nerd Ranch教会了我很多关于使用NSXMLParser解析XML的知识。
答案 1 :(得分:0)
要正确解析此类,您还需要实现didStartElement
方法。你不应该在foundCharacters
方法中向你的可变数组中添加任何东西 - 你应该只在didEndElement
方法中向数组中添加一些东西,因为这个方法表明已经读取了元素的全部内容