<iOS>XML解析
2016-01-12 16:38
323 查看
XML解析
XML解析一般分为两种模式:SAX和DOM,事件和文档
1、XML解析之SAX解析,以及对NSXMLParser的应用
SAX解析说白了,就是一个事物模型解析,从头开始读取文档,然后根据读取到头标签时要怎么处理,读完头标签后,理论上是读取标签值了。
2、XML解析之5个代理方法
-(BOOL)parser:(NSString*)string
{
//系统自带的
NSXMLParser *par = [[NSXMLParser alloc] initWithData:[string dataUsingEncoding:NSUTF8StringEncoding]];
[par setDelegate:self];//设置NSXMLParser对象的解析方法代理
return [par parse];//调用代理解析NSXMLParser对象,看解析是否成功 }
}
(1)准备解析
- (void)parserDidStartDocument:(NSXMLParser *)parser;
(2)准备解析节点
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
(3)获取首尾节点间内容
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
(4)解析完当前节点
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
(5)获取data块数据
- (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock
XML解析一般分为两种模式:SAX和DOM,事件和文档
1、XML解析之SAX解析,以及对NSXMLParser的应用
SAX解析说白了,就是一个事物模型解析,从头开始读取文档,然后根据读取到头标签时要怎么处理,读完头标签后,理论上是读取标签值了。
2、XML解析之5个代理方法
-(BOOL)parser:(NSString*)string
{
//系统自带的
NSXMLParser *par = [[NSXMLParser alloc] initWithData:[string dataUsingEncoding:NSUTF8StringEncoding]];
[par setDelegate:self];//设置NSXMLParser对象的解析方法代理
return [par parse];//调用代理解析NSXMLParser对象,看解析是否成功 }
}
(1)准备解析
- (void)parserDidStartDocument:(NSXMLParser *)parser;
(2)准备解析节点
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
(3)获取首尾节点间内容
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
(4)解析完当前节点
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
(5)获取data块数据
- (void)parser:(NSXMLParser *)parser foundCDATA:(NSData *)CDATABlock
相关文章推荐
- iOS拍照后存储照片到相册中
- ios tableview 插入删除
- iOS Run Loop
- iOS唯一标示符引导
- iOS引入小米push SDK出现duplicate symbol时的解决方法
- iOS NSUserDefaults使用详细解释
- Vmware虚拟机启动按F2无法进入BIOS的解决方法
- IOS内存警告处理
- <iOS>常见错误提示
- iOS开发63-__block 和 __weak的区别
- iOS多线程-NSThread简单语法
- iOS 缓存机制 沙河机制
- IOS多线程操作之一次性代码
- iOS-Ios8 Xcode6 设置Launch Image 启动图片
- 2015移动开发之iOS回顾
- iOS各种开源类库
- iOS 设置tabBar点击后Item的背景颜色.
- ios pan手势
- iOS 开发学习35 本地化
- 在IOS开发中,属性名为id的处理方法