标签:
欢迎-------(北京-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的相关文档。请你敬请等待。
标签:
原文地址:http://www.cnblogs.com/hanguoqing/p/4983690.html