Iphone 如何解析用于ios开发的xml

Iphone 如何解析用于ios开发的xml,iphone,xml,ios,nsxmlparser,Iphone,Xml,Ios,Nsxmlparser,因此,我知道如何解析一些XML结构,但我目前正在尝试解析这个特定的XML结构,这与我习惯的有点不同 通常我会解析如下内容 <xml> <data> <name>Forrest</name> <age>25</name> <username>forrestgrant</username> </data> </xml> 任何帮助都将不胜感激。在您的

因此,我知道如何解析一些XML结构,但我目前正在尝试解析这个特定的XML结构,这与我习惯的有点不同

通常我会解析如下内容

<xml>
  <data>
    <name>Forrest</name>
    <age>25</name>
    <username>forrestgrant</username>
  </data>
</xml>

任何帮助都将不胜感激。

在您的
didStartItem:
方法中,
属性
字典将包含所有XML属性的值。

上面的XML数据将数据作为XML元素的属性提供

通过此回调方法,可以将属性作为键值字典(attributeDict)进行访问

NSLog在该方法中注销字典以查看值:

NSLog(@"attributes: %@", attributeDict);

可以酷,我明白了。。我可能现在就去查字典。。到目前为止,我还没有真正使用过它们。字典只是一组键和值。每个属性都应该有一个键,该键的每个值都应该有一个值。玩得开心:)是的,我对它们有大致的了解,但在我尝试做任何疯狂的事情之前,需要对它们进行一些体面的阅读!)为帮助干杯!非常感谢
- (void)startTheParsingProcess:(NSData *)parserData
{
    [myDataArray release]; // clears array for next time it is used.
    myDataArray = [[NSMutableArray alloc] init]; //initalizes the array

    NSXMLParser *parser = [[NSXMLParser alloc] initWithData:parserData]; //incoming parserDatapassed to NSXMLParser delegate which starts parsing process 

    [parser setDelegate:self];
    [parser parse]; //Starts the event-driven parsing operation.
    [parser release];
}

- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
    if ([elementName isEqual:@"item"]) {
        // NSLog(@"Found title!");
        itemString = [[NSMutableString alloc] init];
    }
}

- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
    [itemString appendString:string];
}

- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
    if ([elementName isEqual:@"item"]) {
        //NSLog(@"ended title: %@", itemString);
        [myDataArray addObject:itemString]; //this is where i pass the values over to my array.

        [itemString release];
        itemString = nil;
    }
}

- (void)parserDidEndDocument:(NSXMLParser *)parser
{
    // Passes myDataArray to the method that will sort and display the array into a uitableview.
    [self startSortingTheArray:myDataArray];
}
(void) parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName 
  namespaceURI:(NSString *)namespaceURI 
  qualifiedName:(NSString *)qualifiedName 
  attributes:(NSDictionary *)attributeDict
NSLog(@"attributes: %@", attributeDict);