0
我已經解析從網絡這個XML:TBXML解析,無法找到nextSibling
<trasporto>
<condizioni id="0">
<data> </data>
<titolo> </titolo>
<testo> </testo>
<sezione> </sezione>
</condizioni>
<condizioni id="1">
<data> </data>
<titolo> </titolo>
<testo> </testo>
<sezione> </sezione>
</condizioni>
........
........
........
</trasporto>
,我需要的字段,數據/ TITOLO /德圖/ sezione從每個condizioni
這裏是我的代碼:
..............
//responseString contains the text fetched from the web
NSData *data = [responseString dataUsingEncoding:NSUTF8StringEncoding];
tbxml = [[TBXML alloc]initWithXMLData:data];
if (tbxml.rootXMLElement)
[self traverseElement:tbxml.rootXMLElement];
[tbxml release];
}
-(void) traverseElement:(TBXMLElement *)element {
NSMutableArray *dataArr = [[NSMutableArray alloc]init];
NSMutableArray *titoloArr = [[NSMutableArray alloc]init];
NSMutableArray *testoArr = [[NSMutableArray alloc]init];
NSMutableArray *sezioneArr = [[NSMutableArray alloc]init];
do {
NSLog(@"%@",[TBXML elementName:element]);
if (element->firstChild)
[self traverseElement:element->firstChild];
if ([[TBXML elementName:element] isEqualToString:@"trasporto"]) {
TBXMLElement *condizioni = [TBXML childElementNamed:@"condizioni" parentElement:element];
TBXMLElement *data = [TBXML childElementNamed:@"data" parentElement:condizioni];
TBXMLElement *titolo = [TBXML childElementNamed:@"titolo" parentElement:condizioni];
TBXMLElement *testo = [TBXML childElementNamed:@"testo" parentElement:condizioni];
TBXMLElement *sezione = [TBXML childElementNamed:@"sezione" parentElement:condizioni];
[dataArr addObject:[TBXML textForElement:data]];
[titoloArr addObject:[TBXML textForElement:titolo]];
[testoArr addObject:[TBXML textForElement:testo]];
[sezioneArr addObject:[TBXML textForElement:sezione]];
NSLog(@"data: %@",dataArr);// [TBXML textForElement:data]);
NSLog(@"titolo: %@",titoloArr);//[TBXML textForElement:titolo]);
NSLog(@"testo: %@",testoArr);//[TBXML textForElement:testo]);
NSLog(@"sezione: %@",sezioneArr);//[TBXML textForElement:sezione]);
// condizioni = condizioni -> nextSibling;
}
} while ((element = element->nextSibling));
}
但這種方式我只能解析第一ç ondizioni,id = 0。看來我無法找到下一個兄弟姐妹。 我的錯誤在哪裏?!?