欢迎-------(北京-iOS移动开发金牌教师QQ:2592675215)韩老师给你带来XML解析课程

今天给大家讲解下xml解析的第三方简单用法;首先我解释下,json和xml解析格式。

JSON格式,轻量级解析,一般都是字典套数组,或者数组套字典。非常简单。

XML格式,一般都是节点形式的存在如:

<?xml version="1.0" ?>

<students>

<student name="aa" gender="男" age="22"/>

<student name="bb" gender="女" age="23"/>

<student name="cc" gender="男" age="24"/>

</students>

那么我解释下上面的这段xml格式。

1.<?xml version="1.0" ?>首先这是声明,xml声明这一点是规定的,当然如果你是做前端的不必要在乎这些,这是后端服务器的任务。

2.<students>是节点,一个xml里面未必存在一个节点,也许会有多个,每个节点里面的子节点都是当前节点的需求

3.<student name="aa" gender="男" age="22"/>子节点,前面说了<students>是节点,<student name="aa" gender="男" age="22"/>是子节点。

这里我讲解是第三方GDataXML用法

那么我们就针对上面的xml格式去解析它。下面咱们看下怎么去做。

首先切记导入你相应的第三方文件;

NSData *data...............从服务器返回过来的数据

    

    GDataXMLDocument *doc=[[GDataXMLDocument alloc] initWithData:data options:0 error:nil];

    GDataXMLElement *root=doc.rootElement;//students;获取根节点

    

    ****这里的root.children:students节点的所有子节点:

    for (GDataXMLElement *student in root.children) {

        WYStudent *stu=[[WYStudent alloc] init];

        

        GDataXMLNode *name=student.attributes[0];//获取第一个属性

        stu.name=[name stringValue];//获取属性保存的数据

        

        GDataXMLNode *gender=student.attributes[1];

        stu.gender=[gender stringValue];

        

        GDataXMLNode *age=student.attributes[2];

        stu.age=[age stringValue];

        

        [self.studentArr addObject:stu];这里我利用了模型,mvc开发模式。丢给模型后又丢给了数组

    }

这时你就可以拿取数组里的数据了。这里说下,现在第三方解析xml,很多种。选择适合自己一种就ok。当然多学习其他类型更好。我会找个时间再给大家更新利用其他第三方解析xml的相关文档。请你敬请等待。

iOS XML解析使用-韩国庆的更多相关文章

  1. IOS XML解析

    <?xml version = "1.0"  encoding ="utf-8"?> <video>小黄人</video> ...

  2. iOS XML  解析(原生的)

    #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @pr ...

  3. iOS - XML 数据解析

    前言 @interface NSXMLParser : NSObject public class NSXMLParser : NSObject 1.XML 数据 XML(Extensible Mar ...

  4. iOS开发——网络篇——JSON和XML,NSJSONSerialization ,NSXMLParser(XML解析器),NSXMLParserDelegate,MJExtension (字典转模型),GDataXML(三方框架解析XML)

    一.JSON 1.JSON简介什么是JSONJSON是一种轻量级的数据格式,一般用于数据交互服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外) JSON的格式很像OC中的字典 ...

  5. 2016 - 1- 23 iOS中xml解析 (!!!!!!!有坑要解决!!!!!!)

    一: iOS中xml解析的几种方式简介 1.官方原生 NSXMLParser :SAX方式解析,使用起来比较简单 2.第三方框架 libxml2 :纯C 同时支持DOM与SAX GDataXML: D ...

  6. iOS开发之网络数据解析(二)--XML解析简介

    前言:本篇随笔介绍的是XML解析. 正文: 1.XML解析方式有2两种: DOM:一次性将整个XML数据加载进内存进行解析,比较适合解析小文件 SAX:从根元素开始,按顺序一个元素一个元素往下解析,比 ...

  7. iOS -数据库网络之xml解析之远程解析XML

    1.IOS中XML文件获取    //设置远程访问地址     NSURL *url=[NSURL URLWithString:@""];       //创建动态URL请求,并初 ...

  8. iOS -数据库网络之xml解析

    XML文件有2种解析方式 1.基于文档(document) 2.基于事件(sax)   1.IOS中XML文件获取   首先要将XML导入工程中 在ViewController的按钮事件中,代码如下: ...

  9. iOS平台XML解析类库对比和安装说明

    在iPhone开发中,XML的解析有很多选择,iOS SDK提供了NSXMLParser和libxml2两个类库,另外还有很多第三方类库可选,例如TBXML.TouchXML.KissXML.Tiny ...

随机推荐

  1. ps 处理gif

    ps打开gif后,做了修改(去掉了背景色),但之后发现本来是动图的gif不动了. 解决该问题需要注意两点: 一:保存时,要选择保存为web格式 二:在ps中打开时间轴,在时间轴中选中某一帧时,只能有多 ...

  2. hyperscan在低版本系统应用问题

    编译环境:centos6.3 32位/64位 由于hyperscan使用许多C++11特性,在低版本系统gcc版本不能编译.后来发现在runtime时也就是hs_scan时只需要依赖libhs_run ...

  3. java高级进阶

  4. 原来你是这样的setTimeout

    先上代码 console.log("start"); setTimeout(function(){ console.log("Hello"); },200); ...

  5. C语言-第3次作业得分

    作业链接:https://edu.cnblogs.com/campus/hljkj/CS201801/homework/2359 作业链接:https://edu.cnblogs.com/campus ...

  6. Error: no override found for 'vtkRenderWindow'

    VSK7.1+QT5.10环境下报该错误,应该在mainwindow.cpp中添加如下语句 记住,是在mainwindow.cpp中添加,不是在main.cpp中添加:

  7. 服务器A制定计划任务,BAT脚本自动备份oracle数据文件,拷贝至服务器B的共享目录。

    运行环境:windows server 2008 R2 目的:在数据库服务器A进行数据库自动备份,并且保留5天. 为了安全,需要在web应用服务器B进行数据库的冗余备份,建立双保险.(保留15天) A ...

  8. Python3数据类型及转换

    I. 数据类型 Python3将程序中的任何内容统称为对象(Object),基本的数据类型有数字和字符串等,也可以使用自定义的类(Classes)创建新的类型. Python3中有六个标准的数据类型: ...

  9. WiFi万能钥匙 for Macv1.1.0中文版

    wifi万能钥匙 for Mac是一款运行在Mac平台上的免费WiFi热点软件,Mac分享无线流量.管理WiFi连接的必备神器.WiFi万能钥匙Mac版内置千万Wi-Fi热点数据,随时随地轻松接入无线 ...

  10. 自己实现一个jQuery插件

    <script src="https://cdn.staticfile.org/jquery/2.0.3/jquery.min.js"></script> ...