下面是我在iOS中使用GDataXml解析区段和Company Sub数据所需的代码。
-<MainList>
<FirstMessage>Right</FirstMessage>
<SecondMessage>Wrong</SecondMessage>
<Status>0</Status>
-<CompanyList>
-<Company>
<Address1>12447 Hedges Run Drive</Address1>
<Address2>#B-1 </Address2>
<City>Lake Ridge</City>
<CompanyName>Starbucks</CompanyName>
<CreatedBy>example@example.com</CreatedBy>
-</Company>
-<Company>
<Address1>12447 Hedges Run Drive</Address1>
<Address2>#B-1 </Address2>
<City>Lake Ridge</City>
<CompanyName>Starbucks</CompanyName>
<CreatedBy>example@example.com</CreatedBy>
-</Company>
</CompanyList>
</MainList>这是我的尝试,我得到的一切都很好,但我在NSArray arr中什么也得不到。
NSArray *channels = [rootElement elementsForName:@"CompanyList"];
for (GDataXMLElement *icon in channels) {
NSArray *arr = [icon elementsForName:@"Company"];
if ([arr count]>0)
{
NSlog(@"Done");
}
} 发布于 2012-05-07 17:32:26
大家好,我想出了下面的方法
GDataXMLDocument *xmlDocument = [GDataXMLDocument allocinitWithData:xmlData选项:0错误:&错误];
NSLog(@"Error:%@",[error description]);
NSArray *getData = [[xmlDocument rootElement]elementsForName:@"CompanyList"];
NSArray *tempArray = [[NSMutableArray alloc]init];
for(GDataXMLElement *e in getData)
{
NSArray *el = [e elementsForName:@"Company"];
for (GDataXMLElement *e in el) {
static int count =0;
NSString *testString = [[[e elementsForName:@"Address1"] objectAtIndex:0] stringValue];
NSLog(@"Company %d : %@",count+1, testString);
}发布于 2012-05-03 20:39:57
看这个答案,这个答案对你很有帮助。NSXMLParser example
https://stackoverflow.com/questions/10431526
复制相似问题