2010-08-05 10 views

답변

0
내가 지금 당신에게 조각을 줄 수 죄송

,하지만 몇 시간 전에했던 하나 개의 프로젝트에서, 우리는 touchXML 라이브러리를 사용을 니펫으로 저를 도와주세요. 이와

http://code.google.com/p/touchcode/wiki/TouchXML

는 XML을 구문 분석하는 것은 매우 쉬웠다.

행운을 빈다.

4

NSXMLParser를 사용하여 달성했습니다. 내 리소스에 r.xml 파일이 있습니다. 제목을 파싱하고 NSXMLParser를 사용하여 표시했습니다. 여기

 r.xml: 

     <rss> 
     <eletitle > My Xml Program </eletitle> 
     </rss> 

내 샘플 코드는

,

@interface :

NSXMLParser *rssparser; 

    NSMutableArray *stories; 
    NSMutableDictionary *item; 
    NSMutableString *currrentTitle; 
    NSString *currentElement; 

@implementation :

-(void) viewDidAppear:(BOOL) animated 
    { 
      [self parseXMLFileAtURL]; 
    } 

    -(void) parseXMLFileAtURL 
    { 
     stories = [[NSMutableArray alloc] init]; 

     NSURL *xmlURL = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"r" ofType:@"xml"]]; 
     rssparser = [[NSXMLParser alloc] initWithContentsOfURL:xmlURL]; 
     [rssparser setDelegate:self]; 
     [rssparser setShouldProcessNamespaces:NO]; 
     [rssparser setShouldReportNamespacePrefixes:NO]; 
     [rssparser setShouldResolveExternalEntities:NO]; 
     [rssparser parse]; 

    } 

    - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict{ 

    currentElement = [elementName copy]; 
    if([elementName isEqualToString:@"rss"]); 
    { 
     item = [[NSMutableDictionary alloc] init]; 
     currrentTitle = [[NSMutableString alloc] init]; 
    } 
} 


    -(void) parser:(NSXMLParser *)parser foundCharacters:(NSString *) string 
    { 
      if([currentElement isEqualToString:@"eletitle"]) 
      { 
       [currrentTitle appendString:string]; 
      } 
     } 

     - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{ 

     if([elementName isEqualToString:@"rss"]) 
     { 
      [item setObject:currrentTitle forKey:@"eletitle"]; 
      [stories addObject:[item copy]]; 
     } 
    } 

    - (void)parserDidEndDocument:(NSXMLParser *)parser 
    { 
       NSLog(@"The currrentTitle is %@",currrentTitle); 

    } 

행운을 빕니다

.

관련 문제