iOS XML解析使用-韩国庆
欢迎-------(北京-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解析使用-韩国庆的更多相关文章
- IOS XML解析
<?xml version = "1.0" encoding ="utf-8"?> <video>小黄人</video> ...
- iOS XML 解析(原生的)
#import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicationDelegate> @pr ...
- iOS - XML 数据解析
前言 @interface NSXMLParser : NSObject public class NSXMLParser : NSObject 1.XML 数据 XML(Extensible Mar ...
- iOS开发——网络篇——JSON和XML,NSJSONSerialization ,NSXMLParser(XML解析器),NSXMLParserDelegate,MJExtension (字典转模型),GDataXML(三方框架解析XML)
一.JSON 1.JSON简介什么是JSONJSON是一种轻量级的数据格式,一般用于数据交互服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外) JSON的格式很像OC中的字典 ...
- 2016 - 1- 23 iOS中xml解析 (!!!!!!!有坑要解决!!!!!!)
一: iOS中xml解析的几种方式简介 1.官方原生 NSXMLParser :SAX方式解析,使用起来比较简单 2.第三方框架 libxml2 :纯C 同时支持DOM与SAX GDataXML: D ...
- iOS开发之网络数据解析(二)--XML解析简介
前言:本篇随笔介绍的是XML解析. 正文: 1.XML解析方式有2两种: DOM:一次性将整个XML数据加载进内存进行解析,比较适合解析小文件 SAX:从根元素开始,按顺序一个元素一个元素往下解析,比 ...
- iOS -数据库网络之xml解析之远程解析XML
1.IOS中XML文件获取 //设置远程访问地址 NSURL *url=[NSURL URLWithString:@""]; //创建动态URL请求,并初 ...
- iOS -数据库网络之xml解析
XML文件有2种解析方式 1.基于文档(document) 2.基于事件(sax) 1.IOS中XML文件获取 首先要将XML导入工程中 在ViewController的按钮事件中,代码如下: ...
- iOS平台XML解析类库对比和安装说明
在iPhone开发中,XML的解析有很多选择,iOS SDK提供了NSXMLParser和libxml2两个类库,另外还有很多第三方类库可选,例如TBXML.TouchXML.KissXML.Tiny ...
随机推荐
- linux服务器ssh免密登录
环境:两台服务器,Park01.Park02,配置ssh免密登录 在Park01执行:ssh-keygen 然后一直回车 生成节点的公钥和私钥,生成的文件会自动放在/root/.ssh目录下 然后 ...
- matlab中如何用rand产生相同的随机数
直接给链接:rand()产生相同随机数
- POJ - 1681: Painter's Problem (开关问题-高斯消元)
pro:开关问题,同上一题. 不过只要求输出最小的操作步数,无法完成输出“inf” sol:高斯消元的解对应的一组合法的最小操作步数. #include<bits/stdc++.h> #d ...
- Mysql update指定区间的数据
,) as a) Mysql 中 limit不能作为字句,所以要在limit外面再嵌套一层select
- SpringBoot 部署到linux环境
第一部分:Springboot项目部署 说明:工具使用的是IEDA 第一:项目打包 1.在pom文件中添加插件 <build> <plugins> <plugin> ...
- Linux防火墙开启关闭查询
1.centos7防火墙 命令含义: –zone #作用域 –add-port=80/tcp #添加端口,格式为:端口/通讯协议 –permanent #永久生效,没有此参数重启后失效 服务与端口的启 ...
- javascript获取某个月份的天数
function DayNumOfMonth(Year,Month) //例DayNumOfMonth(2017,05);{ Month--; //月份是0~11.month=4 var ...
- Centos6.5下使用LAMP搭建discuz论坛(编译安装 PS :自学中 写的不好请见谅)
wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.2.27.tar.gz 下载Apache软件包 wget http://downloads.my ...
- Linux 开(关) ICMP 回应(防止被ping)
临时生效的办法 关闭回应: [root@host ~]# echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all // 客户端测试 ➜ ~ ping 0 ...
- 配置GO开发环境
目前准备开发一套服务器的实时监控系统,经过与大佬讨论,决定选择golang作为数据的中间件. 负责接收游戏服务器的打点数据.清洗数据,入库等流程. 在github上选了一个高星的Go框架,https: ...