如何在iPhone应用程序开发中使用GDataXML解析器解析xml数据?

时间:2012-01-23 03:58:56

标签: iphone parsing xml-parsing gdata

-<stat>
<visitor>4</visitor>
<uniqueVisitor>2</uniqueVisitor>
<order>41</order>
<revenue>20658</revenue>
<conversionRate>48</conversionRate>
<newProduct>25</newProduct>
<outOfStockProduct>11</outOfStockProduct>
</stat>

从这个xml我想得到元素名称“visitor”&amp; “uniqueVisitor”及其使用GDataXML解析器的相应值。

直到现在我已经完成了这些。

xmlFileLocation = [NSURL URLWithString:@"someurl....abc.php"];
NSData *xmlData = [[NSMutableData alloc] initWithContentsOfURL:xmlFileLocation];
xmlDocument = [[GDataXMLDocument alloc]initWithData:xmlData options:0 error:&error];
if (nil == xmlDocument)    {
    NSLog(@"could not load Branch.xml file");
}
else    {
    NSLog(@"Loading desire xml url for dashboard");
    [self GDataXmlParser];
}

使用教程我一直这样做。但现在我想要所有这些元素名称及其相应的值

-(void)GDataXmlParser{

NSArray *getData = [[xmlDocument rootElement]elementsForName:@"stat"];
records = [[NSMutableArray alloc]init];

        tempArray = [[NSMutableArray alloc]init];
        for(GDataXMLElement *e in getData){

         // What i have to do here????
        }

}

1 个答案:

答案 0 :(得分:-1)

请点击此链接获取教程:http://iphonebyradix.blogspot.com/2011/03/using-gdata-to-parse-xml-file.html

-(void) GDataXmlParser 
{        
    xmlDocument = [[GDataXMLDocument alloc]initWithData:xmlData 
                                                options:0 
                                                  error:nil];

    NSArray *temp = [xmlDocument.rootElement elementsForName:@"stat"];
    NSMutableArray *records = [[NSMutableArray alloc]init];
    for(GDataXMLElement *e in temp)
    {
        [records addObject:e];

        NSString *Visitor = [[[e elementsForName:@"visitor"] objectAtIndex:0] stringValue];
        NSLog(@"Visitor : %@",Visitor);

        NSString *UVisitor = [[[e elementsForName:@"uniqueVisitor"] objectAtIndex:0] stringValue];
        NSLog(@"Unique Visitor : %@",UVisitor);
    }
}

希望它对你有所帮助。快乐的iCoding。