IOS如何解析XML文件
发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,这篇文章给大家分享的是有关IOS如何解析XML文件 的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。这里使用NSXMLParser来解析,这个是apple自带的xml解析库在
千家信息网最后更新 2025年01月25日IOS如何解析XML文件
这篇文章给大家分享的是有关IOS如何解析XML文件 的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
这里使用NSXMLParser来解析,这个是apple自带的xml解析库
在Xcode中加入一个xml文件:
001 John Reminder Don't forget the meeting! 002 Jack cc how are you! 003 Tom bb I am fine!
先读出来
NSString* path = [[NSBundle mainBundle] pathForResource:@"shop" ofType:@"xml"]; NSData *data = [[NSData alloc] initWithContentsOfFile:path options:(NSDataReadingMappedIfSafe) error:nil]; NSXMLParser *parser=[[NSXMLParser alloc] initWithData:tmpdata]; [parser setDelegate:self]; [parser parse]; [parser release]; [self parseShopListFromResponse:data];
然后进行解析:
#pragma mark NSXMLParser delegate methods- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *) namespaceURI qualifiedName:(NSString *)qName attributes: (NSDictionary *)attributeDict { self.currentTag = elementName; if ([elementName isEqualToString:@"root"]) { self.tmpList = [[NSMutableArray alloc] init]; }else if ([elementName isEqualToString:@"Shop"]) { self.tmpShop = [[ShopData alloc] init]; NSArray* array = [attributeDict allKeys]; NSString* key = [array lastObject]; NSString*s = [attributeDict objectForKey:key]; self.tmpShop.info = s; }}-(void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string { if (self.currentString == nil) { self.currentString = [[NSMutableString alloc] initWithString:@""]; } if ([self.currentTag isEqualToString:@"name"] || [self.currentTag isEqualToString:@"id"] || [self.currentTag isEqualToString:@"url"] || [self.currentTag isEqualToString:@"info"]) { [self.currentString appendString:string]; }}-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName { if ([elementName isEqualToString:@"Shop"]) { [self.tmpList addObject:self.tmpShop]; [self.tmpShop release]; } if ([elementName isEqualToString:@"name"]) { self.tmpShop.name = [self.currentString copy]; [self.currentString setString:@""]; }else if ([elementName isEqualToString:@"id"]) { self.tmpShop._id = [self.currentString copy]; [self.currentString setString:@""]; }else if ([elementName isEqualToString:@"url"]) { self.tmpShop.url = [self.currentString copy]; [self.currentString setString:@""]; }else if ([elementName isEqualToString:@"info"]) {// self.tmpShop.info = [self.currentString copy];// [self.currentString setString:@""]; }}- (void)parserDidStartDocument:(NSXMLParser *)parser { NSLog(@"开始解析xml文件");}- (void)parserDidEndDocument:(NSXMLParser *)parser { [self.tableView reloadData]; NSLog(@"解析xml文件完成");}
Shopdata的结构是:
@property (nonatomic,retain) NSString *name;@property (nonatomic,retain) NSString *url;@property (nonatomic,retain) NSString *_id;@property (nonatomic,retain) NSString *info;@property (nonatomic, retain) UIImage *appIcon;
感谢各位的阅读!关于"IOS如何解析XML文件 "这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
文件
内容
更多
篇文章
不错
实用
文章
看吧
知识
结构
中加
参考
帮助
有关
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
维护管理AD域控服务器
嵌入式软件开发技术实验报告
江苏直销网络技术参考价格
云平台的两种节点服务器
花镜平面图软件开发
谷歌账号管理 服务器
2k22服务器时间
传奇私服火龙神数据库
华三网络安全面试
db2数据库服务端和客户端
敏捷软件开发考试
数据库实验报告范文
it软件开发工资待遇北京
思南服务器
软件开发验收表格
网络技术岗位的要求
远程教育网络安全制度
狼袭峰服务器
昊天软件开发有限公司
世界技能大赛网络安全厂商
下列活动不属于软件开发的是
交易服务器为什么被攻击
数据库视图方式获取数据
网络安全技术用什么软件
sql数据库与组态建立连接
农村信用社软件开发考试
游戏服务器会遭受攻击吗
数据库id自增数列
在数据库中找一个值
mysql数据库项目案例