0

NSXMLParser を使用して 1 つの単純な XML ファイルを解析しようとしています...これが私のコードです..

    -(void) parseXml{        
        NSString *XmlPath=[[NSBundle mainBundle] pathForResource:@"myXML" ofType:@"xml"];         
        //NSLog(@"%@",XmlPath); path found!       

         NSData *xml=[[NSData alloc] initWithContentsOfFile:XmlPath];
         //NSLog(@"%@",Xml); outputs : xml in hexadecimal coded form   

        self.Xmlparser=[[NSXMLParser alloc]initWithData:xml];
        //NSLog(@"%@",self.Xmlparser); outputs : some hexadecimal code

        self.Xmlparser.delegate=self;

        NSLog(@"%@",self.Xmlparser);        

        if([self.Xmlparser parse])
            NSLog(@"PARSED");
        else
            NSLog(@"NotPARSED");
    }

出力は「NotPARSED」です...何が問題になっていますか?

4

1 に答える 1

0

ねえ、デリゲートメソッドでその解析が行われているかどうかを確認できます..

- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError {
    NSString * errorString = [NSString stringWithFormat:@"Unable to download story feed from web site (Error code %i )", [parseError code]];
    NSLog(@"error parsing XML: %@", errorString);

    UIAlertView * errorAlert = [[UIAlertView alloc] initWithTitle:@"Error loading content" message:errorString delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
    [errorAlert show];
     NSLog(@"NotPARSED");
}



- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI 
 qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
     NSLog(@"PARSED");
    if([elementName isEqualToString:@"item"]){
        currentFilm       = [Film alloc];
        currentNodeContent =[[NSMutableString alloc] init];
    }
}

これがお役に立てば幸いです...

于 2012-12-06T07:09:04.637 に答える