将XML解析为NSMutableArray

时间:2012-12-17 03:53:47

标签: objective-c parsing nsmutablearray

我正在解析一个XML文件,一切都很完美,而且我看到的文件有NSLog,我也看到了解析的结果,但当我将我需要的标签转移到一个NSMutableArray,结果很奇怪。

-(void) parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName

 namespaceURI:(NSString *)namespaceURI
    qualifiedName:(NSString *)qName {
    if ([elementName isEqualToString:@"nom"]) {
        // displays the Content of the tag
        NSLog(soapResults);
        // add the content of the tag to the NSMutableArray
        [mySuppliers addObject:soapResults];
        // displays the NSMutable Array
        NSLog(@"array: %@", mySuppliers);
        [soapResults setString:@""];
        elementFound = FALSE;
        // displays the count of the NSMutable Array
        NSLog(@"NUMBER %d", [mySuppliers count]);
 }
 ....

输出结果为:

2012-12-16 22:00:03.140 StartProj[11698:c07] ABC
2012-12-16 22:00:03.140 StartProj[11698:c07] array: (
    "ABC"
)
2012-12-16 22:00:03.140 StartProj[11698:c07] NUMBER 1
2012-12-16 22:00:03.141 StartProj[11698:c07] ABBOTT
2012-12-16 22:00:03.141 StartProj[11698:c07] array: (
    "ABBOTT ",
    "ABBOTT "
)
2012-12-16 22:00:03.141 StartProj[11698:c07] NUMBER 2
2012-12-16 22:00:03.142 StartProj[11698:c07] ACCESSORIES
2012-12-16 22:00:03.142 StartProj[11698:c07] array: (
    ACCESSORIES,
    ACCESSORIES,
    ACCESSORIES
)
2012-12-16 22:00:03.142 StartProj[11698:c07] NUMBER 3

2 个答案:

答案 0 :(得分:1)

对于xml解析,尝试使用非常简单的rapturexml。

https://github.com/ZaBlanc/RaptureXML

答案 1 :(得分:0)

更好的是可以在将每个元素添加到字典之后分配NSmutabledictionary,最后字典项转移到nsmutablearray。 enter image description here

enter image description here

enter image description here