XML的解析方式
2016-03-13 21:18
274 查看
XML的解析方式
SAX大小文件都可以
NSXMLParser
DOM
最好是小文件
GDataXML
NSXMLParser的用法
创建解析器来解析// 创建XML解析器 NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data]; // 设置代理 parser.delegate = self; // 开始解析XML(parse方法是阻塞式的) [parser parse];
代理对象要遵守NSXMLParserDelegate协议,实现代理方法
/** * 解析到某个元素的结尾(比如解析</videos>) */ - (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName { } /** * 解析到某个元素的开头(比如解析<videos>) */ - (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict { } /** * 开始解析XML文档 */ - (void)parserDidStartDocument:(NSXMLParser *)parser { } /** * 解析完毕 */ - (void)parserDidEndDocument:(NSXMLParser *)parser { }
GDataXML
配置具体用法
// 加载整个文档 GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:data options:0 error:nil]; // 获得根节点 doc.rootElement; // 获得其他节点 [element elementsForName:@"video"]; // 获得节点的属性 [element attributeForName:@"name"].stringValue;
相关文章推荐
- 如何用命令将Farm Solution部署到SharePoint?
- 哈夫曼算法解压文件前两步
- VS2005编译PJSIP库
- [Architect] Abp 框架原理解析(5) UnitOfWork
- nodejs个人博客系统
- 循环物理依赖
- jmeter jdbc各字段的含义
- HDOJ 2073 无限的路
- 离散数学4___关系矩阵
- 下面的程序执行后有什么错误?
- monkey检测内存泄漏
- android中xml tools属性详解
- Unity - 编辑器脚本
- ios tableview单选
- 链表的部分翻转
- bzoj3144【HNOI2013】切糕
- LR script-1
- iOS开发UI篇—核心动画简介
- Implementation of carsten steger “An Unbiased Detector of Curvilinear Structures"
- epoll LT/ET 深入剖析