2.IOS数据解析(二) XML解析

1.XML的介绍:

1、XML解析方式有2两种:
    DOM:一次性将整个XML数据加载进内存进行解析,比较适合解析小文件
    SAX:从根元素开始,按顺序一个元素一个元素往下解析,比较适合解析大文件
2.XML解析方案很多:
      2-1、第三方框架:
    libxml2:纯C语言,默认包含在iOS SDK中,同时支持DOM和SAX解析
    GDataXML:DOM方式解析,由Google开发,基于libxml2
      2-2、苹果原生
    NSXMLParser:SAX方式解析,使用简单
       2-3、本人基于苹果原生NSXMLParser封装好的XML解析工具
    HYXMLParser:SAX方式解析,使用比NSXMLParser更简单,更简洁。
   下载地址:[HYXMLParser](https://github.com/HeYang123456789/XMLParser)
3.XML解析方式的选择建议:
      大文件:NSXMLParser或者[HYXMLParser]      
              (https://github.com/HeYang123456789/XMLParser)、libxml2(但是几乎不用)
  小文件:GDataXML、NSXMLParser或者[HYXMLParser]        
               (https://github.com/HeYang123456789/XMLParser)、libxml2
4.NSXMLParset使用方法:

解析过程三步骤:

XMLParseDelegate.png

2.IOS数据解析(二) XML解析_第1张图片
image.png

2.IOS数据解析(二) XML解析_第2张图片
image.png

5.封装NSXMLParser而创建的使用方法
<好处:使用方便,可以面向任意类型的模型对象解析XML,复用性高,与外界高内聚低耦合>
  这里展示的示例是从我的github上 HYXMLParser下载的XMLParser_3这第3个版本的XML解析工具类:
2.IOS数据解析(二) XML解析_第3张图片
image.png

5.1将HYXMLParse文件工具类直接拷贝到你的项目中去
2.IOS数据解析(二) XML解析_第4张图片
image.png

5.2使用方法:
2.IOS数据解析(二) XML解析_第5张图片
image.png

根据实际情况,字典转模型的方法可能使用MJExtension代替kvc更合适

你可能感兴趣的:(2.IOS数据解析(二) XML解析)