2012-01-10 1 views
0

다음 문자열을 TBXML을 사용하여 구문 분석하려고했습니다.iphone sdk에서 TBXML을 사용하여 문자열을 구문 분석하는 방법은 무엇입니까?

<panel><start><post_id>4</post_id><user_id>2</user_id><post>Hyder here</post><created_on>2012-01-09 06:36:59</created_on><likes>0</likes><noc>0</noc><status>A</status></start><start><post_id>3</post_id><user_id>2</user_id><post>Hello hyder here</post><created_on>2012-01-09 06:34:09</created_on><likes>0</likes><noc>0</noc><status>A</status></start><start><post_id>2</post_id><user_id>0</user_id><post>Hi, This is Syed Hyder....</post><created_on>2012-01-09 01:07:36</created_on><likes>0</likes><noc>0</noc><status>A</status></start><start><post_id>1</post_id><user_id>0</user_id><post>Hello, gaurav....How are you.</post><created_on>2012-01-09 01:05:11</created_on><likes>0</likes><noc>0</noc><status>A</status></start></panel> 

내 코드 : -

NSMutableArray *newArr = [[NSMutableArray alloc] init];//21 
    RXMLElement *rxml = [[RXMLElement alloc] initFromXMLString:response]; 
    [rxml iterate:@"panel.start" with:^(RXMLElement *start) { 
     ModelPost *newPost = [[ModelPost alloc] init]; 
     newPost.message = [NSString stringWithFormat:@"%@", [start child:@"post"]]; 
     NSLog(@"Post = %@", [start child:@"post"]); 
     [newArr addObject:newPost]; 
    }]; 

하지만 난 그것을 또는 iterate loop에 입력 할 수 없습니다입니다. 샘플 코드, 제안 및 자습서를 통해이 문제를 해결할 수 있도록 도와주십시오. 미리 덕분에 ....

답변

2
- (void)xmlparserurl{ 

//xml data url calling.... 

    tbxml = [[TBXML tbxmlWithURL:[NSURL URLWithString:@"http://karen.webmascot.com/iapi/orders.php?max_count=10"]] retain]; 


records = [NSMutableArray array]; 
[records retain]; 




//retrieving all data from the xml 
if (tbxml.rootXMLElement){ 
    NSLog(@"inserting"); 
    [self traverseElement:tbxml.rootXMLElement]; 
} 
[tbxml release]; 
} 

- (void)traverseElement:(TBXMLElement *)element { 
do { 
    //NSLog(@"%@",[TBXML elementName:element]); 
    if (element->firstChild) 
     [self traverseElement:element->firstChild]; 
    if ([[TBXML elementName:element] isEqualToString:@"start"]) { 
     //NSLog(@"xml element checking"); 
     TBXMLElement *id = [TBXML childElementNamed:@"attribute name" parentElement:element]; 

//inserting into the mutable array  
[records addObject:[NSArray arrayWithObjects: 
[TBXML textForElement:elementname], 
[TBXML textForElement:elementname], 
[TBXML textForElement:elementname],nil]]; 

    } 

} while ((element = element->nextSibling)); 


[self.tableview reloadData]; 
} 

는 난 단지 XML 데이터를 검색하는 코드를 보낸다. 나는 당신이 당신의 추가 질문에 대한 답을 얻을 수있는 자습서를 보내고있다.

http://www.tbxml.co.uk/TBXML/API.html