iPhone:使用属性解析XML文件

时间:2009-10-05 11:05:24

标签: iphone xml parsing

我想解析XML文件。我能够解析简单的XML文件。但是没有复杂的XML文件

<?xml version="1.0" encoding="utf-8"?>
<Level>
<p id='327'>
   <Item>
      <Id>5877</Id>
      <Type>0</Type>
      <Icon>---</Icon>
      <Title>Btn1Item1</Title>
   </Item>
   <Item>
      <Id>5925</Id>
      <Type>0</Type>
      <Icon>---</Icon>
      <Title>Btn1Item4</Title>
   </Item>
</p>
</Level>

这里我想得到<p>标签的值(我的意思是我想得到属性id的值,即327) 请建议

2 个答案:

答案 0 :(得分:2)

您可以使用以下代码在XML解析方法中找到您的“id”值,

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

    if([elementName isEqualToString:@"p"])
    {

        int idValue = [[attributeDict objectForKey:@"id"] intValue];

        NSLog(@"Reading id value :%d", idValue);
    }

}

答案 1 :(得分:0)

(void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName attributes:(NSDictionary *)attributeDict方法中,attributeDict参数包含所有属性。例如,要访问“id”属性,只需调用[attributeDict objectForKey:@"id"]