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. JS基础学习(一)

    首先感谢 http://www.w3school.com.cn/js/index.asp 学js真的很方便,&下面的内容其实是我自己做的一个备忘 第一节 大致了解 一 js基本介绍 1.轻量级 ...

  2. 【leetcode】Path Sum

    题目简述: Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding ...

  3. 【leetcode】Pascal's Triangle II

    题目简述: Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3, Retur ...

  4. TOP 和 OFFSET 筛选(转)

    SQL Server 对行数的排序提供了 TOP 筛选.SQL Server 2012 新增了 OFFSET 筛选. 一.TOP 筛选 如果有 ORDER BY 子句,TOP 筛选将根据排序的结果返回 ...

  5. PHP环境搭建

    1.安装wampserver,安装成功后浏览器中输入:localhost可以打开下面的页面 2.想配置本机IP打开文件的话,单击wampserver-Apache-httped.conf,打开文件,修 ...

  6. 基于暗通道优先算法的去雾应用(Matlab/C++)

    基于暗通道优先的单幅图像去雾算法(Matlab/C++) 算法原理:             参见论文:Single Image Haze Removal Using Dark Channel Pri ...

  7. su root认证失败的解决方法

    sudo passwd 输入安装密码. 输入新密码. 输入 su 即获得root权限.

  8. 关于XML中:XmlNode和XmlElement的涵义及不同之处

    今天学习XML,遇到XmlNode和XmlElement俩个类,故有了下文的所述: 今天在做ASP.NET操作XML文档的过程中,发现了两个类:XmlNode和XmlElement.这两个类的功能极其 ...

  9. 利用Photoshop修改图片以达到投稿要求

    摘自:http://www.dxy.cn/bbs/thread/8602152#8602152 利用Photoshop修改图片以达到投稿要求 软件版本为Photoshop CS V8.0.1(中文版) ...

  10. my97DatePicker日期控件——日期输入框联动,使用focus使第二个输入框没展示出日期控件

    描述问题场景: 1.jquery使用的版本是jquery-1.7.2.min.js 2.代码不是写在页面上的,是通过事件后追加的 <!DOCTYPE html> <html> ...