iOS开发中 使用XML和JSON对本地文件进行解析

解析:就是按照约定好的格式去提取数据的过程。后台人员按照约定好的格式去存入数据,而前端开发人员再以约定好的格式去读取数据。

目前主流的两种数据格式是JSON 和 XML,其中又以JSON使用为主。

XML又分为SAX解析和DOM解析

SAX解析是基于事件回调解析机制进行逐行解析,效率较低,但是适合大数据的解析。一般使用系统提供的NSXMLParser类进行解析


此处清空数组元素是因为将解析方法写到了button的点击事件中,如果不将数组清空的话,再次点击button会将再次解析的数据呈现出来,造成重复显示

XML解析需使用代理,其常用方法是以下几种:


<helloworld>是XML数据中的开始标签,数据是从此处开始读取 (注:XML数据中第一行是版本号和编码方式,必须放在第一行顶格写,不然读取不到数据)






DOM解析是把解析数据一下全部读入内存,之后再初始化成树形结构,逐层进行解析,效率较高,但是不适合大数据的解析。一般使用谷歌提供的第三方类GDataXMLNode进行数据解析。

DOM解析是由Google提供的一个开源的基于C语言的libxml2.dylib动态的链接库进行封装而成的为OC对XML进行解析的类

其使用时应先进行以下两步的操作


DOM解析又分为两种方式,但是解析的前三步是相同的是:


在将解析的内容写入GDataXMLDocument这一步中options是无符号整型数据,此处给了个0;清空数据源的原因同SAX解析

DOM解析的第一种方式是先获取根节点,再根据根节点获取子节点,再对子节点进行遍历获取子节点下的所有元素


DOM的第二种方式是一下获取全部同名称的节点下的所有元素



JSON(Javascript Object Notation)解析  轻量级的数据交换格式,采用完全独立于语言的文本格式,被称为理想的数据交换语言

JSON文档有两种结构:对象和数组

其中对象类似于OC中的字典,数组类似于OC中的数组  只是其中的元素字符串前不加@

JSON解析可以使用系统提供的类NSJSONSerialization进行解析,也可以使用第三方类进行解析

系统的解析方法是

注:清空数据源原因同SAX解析

 使用第三方类解析  此处使用的是JSONKit  又可以分为两种方式

第一种方式是根据路径初始化为字符串对象 再解析成OC对象


第二种方式是根据文件路径初始化为NSData对象



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值