iOSiOS学习我爱编程

iOS网络数据解析之XML解析

2016-04-13  本文已影响162人  Zcocoa

XML解析常见的两种方式:DOM解析和SAX解析

DOM解析

}

SAX解析

<pre><code>//遵循协议

@interface rootViewController ()<NSXMLParserDelegate>

//xml解析之sax解析

pragma mark - sax解析的代理方法

//开始解析的代理方法

//开始解析某个节点

//elementName:标签名称

//namespaceURI:命名空间指向的链接

//qName:命名空间的名称

//attributeDict:节点的所有属性

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

   NSLog(@"开始解析%@节点",elementName);
   //当开始解析student标签的时候,就应该初始化字典,因为一个字典就对应的是一个学生的信息
   if ([elementName isEqualToString:@"student"]) {
      self.saxDic = [NSMutableDictionary dictionary];
   }

}

//获取节点之间的值

-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string {

  NSLog(@"取值--------%@",string);
  if (self.valueString) {//说明有值
      [self.valueString appendString:string];
  } else {
      self.valueString = [NSMutableString stringWithString:string];
  }

}

//某个节点结束取值

//结束解析

//解析出错

上一篇 下一篇

猜你喜欢

热点阅读