XML 数据解析案例
来源:互联网 发布:淘宝客 嗨推 编辑:程序博客网 时间:2024/06/05 13:16
#import "DomTool.h"@implementation DomTool+ (NSMutableArray *)startDomTool { // 先获取文件路径 NSString *path = [[NSBundle mainBundle] pathForResource:@"Student" ofType:@"xml"]; // 把路径下得文件变成NSData NSData *data = [NSData dataWithContentsOfFile:path]; // 初始化数组 NSMutableArray *stuArr = [NSMutableArray array]; // 创建一个解析工具 // 第一个参数: 文件内容, NSData // 第二个参数: 没有用 // 第三个参数: 错误信息 NSError *error = nil; GDataXMLDocument *document = [[GDataXMLDocument alloc] initWithData:data options:0 error:&error]; // 获取根节点 GDataXMLElement *rootElement = [document rootElement]; // 它可以按照指定的节点名进行筛选, 不需要逐行进行遍历 NSArray *arr = [rootElement elementsForName:@"student"]; // 对满足条件的节点进行遍历 for (NSInteger i = 0; i < arr.count; i++) { // 找到下标对应的节点 GDataXMLElement *stu = arr[i]; // 创建一个学生 Student *tempStu = [[Student alloc] init]; [stuArr addObject:tempStu]; [tempStu release]; GDataXMLElement *name = [[stu elementsForName:@"name"] lastObject]; NSString *stuName = [name stringValue]; tempStu.name = stuName; GDataXMLElement *sex = [[stu elementsForName:@"sex"] lastObject]; NSString *stuSex = [sex stringValue]; tempStu.sex = stuSex; GDataXMLElement *age = [[stu elementsForName:@"age"] lastObject]; NSString *stuAge = [age stringValue]; tempStu.age = stuAge; } return stuArr;}- (void)startDom { // 先获取文件路径 NSString *path = [[NSBundle mainBundle] pathForResource:@"Student" ofType:@"xml"]; // 把路径下得文件变成NSData NSData *data = [NSData dataWithContentsOfFile:path]; // 初始化数组 self.stuArr = [NSMutableArray array]; // 创建一个解析工具 // 第一个参数: 文件内容, NSData // 第二个参数: 没有用 // 第三个参数: 错误信息 NSError *error = nil; GDataXMLDocument *document = [[GDataXMLDocument alloc] initWithData:data options:0 error:&error]; // 获取根节点 GDataXMLElement *rootElement = [document rootElement]; // 它可以按照指定的节点名进行筛选, 不需要逐行进行遍历 NSArray *arr = [rootElement elementsForName:@"student"]; // 对满足条件的节点进行遍历 for (NSInteger i = 0; i < arr.count; i++) { // 找到下标对应的节点 GDataXMLElement *stu = arr[i]; // 创建一个学生 Student *tempStu = [[Student alloc] init]; [self.stuArr addObject:tempStu]; [tempStu release]; GDataXMLElement *name = [[stu elementsForName:@"name"] lastObject]; NSString *stuName = [name stringValue]; tempStu.name = stuName; GDataXMLElement *sex = [[stu elementsForName:@"sex"] lastObject]; NSString *stuSex = [sex stringValue]; tempStu.sex = stuSex; GDataXMLElement *age = [[stu elementsForName:@"age"] lastObject]; NSString *stuAge = [age stringValue]; tempStu.age = stuAge; }}@end
0 0
- XML 数据解析案例
- 11.PHP生成XML数据,android解析XML案例简介
- sax解析案例(javabean封装xml文档数据)
- Android中XML和JSON数据的解析小案例
- sax解析xml案例
- sax解析xml案例
- json数据解析案例
- xml+反射dom解析案例
- dom4j解析xml文件案例
- dom4j解析XML文档案例
- android pull解析xml案例
- 使用Dom4j解析XML案例
- xml基础及解析案例
- XML文档解析之dom4j解析案例
- Json获取、解析案例演示----xml解析
- XML解析之DOM解析技术案例
- XML解析之SAX解析技术案例
- Android开发案例:网络交互&XML与json数据解析&HttpUtil优化
- Ant中build.xml详细部署
- 图像视频防抖
- 项目6-ASCII
- Objective-C 单例宏
- 不同软件版本及系统的差异导致的错误汇总
- XML 数据解析案例
- 学生信息表管理
- mysql自动分区自动清理
- 简单的Java程序 简约不简单
- Liferay学习笔记:Liferay faces bridge
- 对自由变量的理解
- Android视图绘制流程完全解析,带你一步步深入了解View(二)
- 使用 udev 高效、动态地管理 Linux 设备文件
- iOS7以后 视图Frame坐标起点发生的变化