NSXMLParser解析xml格式的数据
用法如下:
首先,NSXMLParser必须继续NSXMLParserDelegate协议
@interface XMLHelper : NSObject<NSXMLParserDelegate>
//遍例xml的节点
//当xml节点有值时,则进入此句
//当遇到结束标记时,进入此句
首先,NSXMLParser必须继续NSXMLParserDelegate协议
@interface XMLHelper : NSObject<NSXMLParserDelegate>
首先设置XML数据,并初始化NSXMLParser
- (void)viewDidLoad { NSMutableString *Strxml=[NSMutableStringstringWithString:@"<Body><xml1>11111111</xml1><xml2><xml3>3333333333</xml3></xml2></Body>"]; NSData *data=[NSData dataWithBytes:[Strxml UTF8String]length:[Strxml length]]; NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];//设置XML数据 [parser setShouldProcessNamespaces:NO]; [parser setShouldReportNamespacePrefixes:NO]; [parser setShouldResolveExternalEntities:NO]; [parser setDelegate:self]; [parser parse]; [super viewDidLoad]; } | |
//遍例xml的节点
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString*)elementName namespaceURI:(NSString *)namespaceURIqualifiedName:(NSString *)qName attributes:(NSDictionary*)attributeDict { NSLog(@"Name:%@",elementName); } | |
//当xml节点有值时,则进入此句
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString*)string { NSLog(@"Value:%@",string); } | |
//当遇到结束标记时,进入此句
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString*)elementName namespaceURI:(NSString *)namespaceURIqualifiedName:(NSString *)qName { } | |
iphone开发之xml解析流程小结
解析xml文件是一个简单的过程,大体思路总结有如下几个步骤:
一、创建xml节点模型。
创建模型是为了方便我们更好地对每个xml节点进行管理和操作。节点模型的自由度因人而异。
二、创建模型管理器。
模型管理器管理所有的节点模型,是对节点模型的一个统一封装,主要的功能是提供给使用到xml数据的开发人员。
三、创建解析器。
解析器解析xml文件,并把数据初始化到每一个节点模型,并返回模型管理器对象。