사용하여 콘텐츠를 구문 분석노드 앵커 태그와 나는 "비교"내부의 HTML 태그를 구문 분석 할 NSXMLParse
<comparison>
<a href="/cgi-bin/amazon.cgi?B0050AMJYU">Amazon.com</a>
($34.36) |
<a href="/cgi-bin/walmart.cgi?16904483">Walmart.com</a>
($34.36) |
<a href="/cgi-bin/rakuten.cgi?219782579">Rakuten.com</a>
($34.36) |
<a href="/cgi-bin/bestbuy1.cgi?mp1307815397">BestBuy.com</a>
($34.36)
</comparison>
내가 무엇입니까 출력은 다음과 같습니다
BestBuy.com ($34.36)
예상 출력 :
Amazon.com ($34.36)
Walmart.com ($34.36)
Rakuten.com ($34.36)
BestBuy.com ($34.36)
그러나 네 가지 항목을 모두 표시하고 싶습니다.
CODE 당신이 commentsArray
라는 NSMutableArray
와 DealsParsingObjects
클래스가 나타납니다
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict {
currentElementValue = [NSMutableString string];
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
if ([elementName isEqualToString:@"item"]) {
dealsListObj = [[DealsParsingObjects alloc] init];
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {
[currentElementValue appendString:string];
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
if ([elementName isEqualToString:@"short_title"]) {
dealsListObj.itemTitle = currentElementValue;
currentElementValue = nil;
}
else if ([elementName isEqualToString:@"final_price"]) {
dealsListObj.price = currentElementValue;
currentElementValue = nil;
}
//Detail view
else if ([elementName isEqualToString:@"merchant"]) {
dealsListObj.itemMerchant = currentElementValue;
currentElementValue = nil;
}
else if ([elementName isEqualToString:@"getdeal"]) {
dealsListObj.itemGetDeal = currentElementValue;
currentElementValue = nil;
}
//comparison
else if ([elementName isEqualToString:@"comparison"]) {
dealsListObj.comparison = currentElementValue;
currentElementValue = nil;
}
else if ([elementName isEqualToString:@"item"]) {
[resultArray addObject:dealsListObj];
[dealsListObj release];
dealsListObj = nil;
currentElementValue = nil;
}
}
파싱 코드는 무엇입니까? – Larme