XML数据的解析

  相比于JSON数据解析而言,XML数据解析可能会让更多的童鞋感觉到吃力,对我来说,同样认为JSON数据好像让人感觉比较友好,不过对于程序开发者来说,无非就是这两种数据解析占比较大的部分,其中JSON数据占80%,而XML只占到20%,虽然大部分还是JSON的天下,但我们也不能掉以轻心,不能忽略这20%的XML,听完今天老师的课程,我做了如下总结,更多总结见我个人博客。

下面给大家看两个图片,这两个图片就是传说中的JSON和XML数据,要对他们进行解析,估计很多同仁都像我一样,第一眼看上去,哎呀妈呀,是不是都有一种晕倒在厕所的感觉,不管你有没有,反正我是有的。

JSON

XML

那么我们应该如何面对这些看上去复杂的数据呢,下面将一种方法,主要是用第三方解析方法进行解析,在Xcode中导入第三方头文件,首先我们打开神器Xcode,进入如下页面,

1,第一步,点击工程文件,可以看到下面的页面

2,第二步,点击Build Phases,找到Search Paths中的Header Search Paths,点击右边的方框的东西,双击。

3,第三步,双击之后,看到如图所示的方框,点击“+”号,填入箭头所指的路径

4,第四步,找到Link Binary With Libraries(1 item),点击“+”,把方框内的内容放到搜索框里搜索,我这里是加好的,没加之前是看不到方框这里的内容的,搜到之后点击添加即可

5,第五步,找到刚才的第三方*.m文件,点击,双击,然后输入方框内的内容,这里的作用就是告诉编译器,这里将不启用自动内存管理机制

6,第六步,好戏就要开始了,如图,将第三方的*.h 和*.m文件拖到工程之中,并在main函数中包含头文件,一切正常的话,应该是如图所示的样子。

7,第七步,将文件的路径传进来,相信这步大家都是非常熟悉的,这里就不解析了

8,第八步,我们来尝试着在文件进行解析之后获取CityName这个元素,代码如下,通过代码,我们成功获取了该数据,进行输出试验

9,第九步,我们来看一个比较复杂的一个元素下面又有三个元素的嵌套数据,根据代码显示,因为该方法是返回一个数组,所以这里我们选择一个作为例子,就取数组第一个数IntentionLevelArray[0],将其属性打印出来

10,第十步,最后一个例子,比上面的稍微更复杂一点,如图,用//Item,要活的所有Item节点下的数据,不管Item在哪里,还有一个就是用@//value,用来获取所有value的属性值,不管value在哪里!

通过以上代码的实现,估计很多童鞋都思维清晰了吧,以后遇到这样的数据还得认真分析,才能将其克服,希望大家能够掌握这种方法,如果有哪里不对的地方,请指出来,根据上面的代码如果程序没有错误,打印出来的结果应该是如下图的样子的。

XML数据的解析的更多相关文章

  1. json和xml数据的解析

    一 json数据 1一条json就像一个对象,也想像OC中的数组,且内嵌了很多键值对字典 {"name" : "jack", "age" : ...

  2. iOS开发网络篇—XML数据的解析

     iOS开发网络篇—XML数据的解析 iOS开发网络篇—XML介绍 一.XML简单介绍 XML:全称是Extensible Markup Language,译作“可扩展标记语言” 跟JSON一样,也是 ...

  3. android基础---->XMl数据的解析

    在网络上传输数据时最常用的格式有两种,XML和JSON,下面首先学一下如何解析XML格式的数据,JSON的解析可以参见我的博客(android基础---->JSON数据的解析).解析XML 格式 ...

  4. 多线程与网络之JSON和XML数据的解析

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  5. cURL模拟POST方法提交XML数据并解析

    php编程中会用到xml格式传送数据,这里演示下php以post形式发送xml,服务器接收,并解析xml的过程! post_xml.php源码: <?php header("Conte ...

  6. Android网络之数据解析----SAX方式解析XML数据

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  7. iOS 详解NSXMLParser方法解析XML数据方法

    前一篇文章已经介绍了如何通过URL从网络上获取xml数据.下面介绍如何将获取到的数据进行解析. 下面先看看xml的数据格式吧! <?xml version="1.0" enc ...

  8. WebService传递XML数据 C#DataSet操作XML 解析WebService返回的XML数据

    Webservice传递的数据只能是序列化的数据,典型的就是xml数据.   /// <summary>         /// 通过用户名和密码 返回下行数据         /// & ...

  9. (四)SAX方式解析XML数据

    SAX方式解析XML数据 ​文章来源:http://www.cnblogs.com/smyhvae/p/4044170.html 一.XML和Json数据的引入: 通常情况下,每个需要访问网络的应用程 ...

随机推荐

  1. CrashMonkey4IOS App测试

    下载地址:https://github.com/vigossjjj/CrashMonkey4IOS 根据下载地址里面的说明安装一下,以下进行配置 1.进入CrashMonkey4IOS-master/ ...

  2. django一些操作命令

    1.数据库与class类同步命令 syncdb command is deprecated in django 1.7. Use the python manage.py migrate instea ...

  3. Android OutOfMemoryError的理解

    最近写了个测试demo调试网络优化,发现下载20M的文件时我直接申请了20M的空间,然后就OOM导致crash了~~ 典型的错误信息如下: OutOfMemoryError:Out of memory ...

  4. Python-基础练习题2

    编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 #!/usr/bin/env python # _*_ coding:utf8 _*_ import getpass Userna ...

  5. Startcom SSL证书申请 IIS设置 配置 攻略

    申请具体参考:http://www.cnblogs.com/yibinboy/p/6137426.html 制作要导入服务器IIS上的证书. 点击控制面板的左上角的TOOL BOX,然后点击Creat ...

  6. 亚马逊S3下载上传文件

    引用网址: http://www.jxtobo.com/27697.html 下载 CloudBerry Explorer http://www.cloudberrylab.com/download- ...

  7. Makefile笔记之一 ------ 变量的引用及赋值

    1.变量的引用方式: "$(变量名)"或者"¥{变量名}" 例如: ${Objs}就是取变量Objs的值 注意: 当变量名为单字符是可以采用:"$a& ...

  8. 增删改查--windows下mysql客户端--表的使用

    >>>>>>>>>>>>>>>>>>>> selet 5种子句之where常用运 ...

  9. 【大数据技巧】日均2TB日志数据在线快速处理之法

    [大数据技巧]日均2TB日志数据在线快速处理之法 http://click.aliyun.com/m/8958/

  10. 转:Delphi2010新发现-类的构造和析构函数功能

    Delphi2010发布了. 虽然凭着对Delphi的热爱第一时间就安装了,但是现在可能是年纪大了,对新事物缺乏兴趣了.一直都没有仔细研究. 今天有点时间试了一下新功能. 本来C#和Delphi.NE ...