XML解析(DOM)
2015-09-18 23:02
344 查看
代码示例
#import "ViewController.h"
#import "GDataXMLNode.h"
#import "Video.h"
@interface ViewController ()
/**所有数据的容器*/
@property(nonatomic,strong)NSMutableArray *videos;
@end
@implementation ViewController
- (NSMutableArray *)videos
{
if (_videos ==
nil) {
_videos = [NSMutableArray
array];
}
return
_videos;
}
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
// 1. url
NSURL *url = [NSURL
URLWithString:@"http://192.168.10.9/videos.xml"];
// 2. 请求
NSURLRequest *request = [NSURLRequest
requestWithURL:url cachePolicy:1
timeoutInterval:2.0f];
// 3. 连接
[NSURLConnection
sendAsynchronousRequest:request
queue:[NSOperationQueue
mainQueue] completionHandler:^(NSURLResponse *response,
NSData *data, NSError *connectionError) {
// 将XML整个读入内存,
对应的就是GDataXMLDocument对象
GDataXMLDocument *document = [[GDataXMLDocument
alloc] initWithData:data
error:NULL];
// NSLog(@"%@", document.rootElement.children);// document.rootElement.children--》videos
for (GDataXMLElement *element
in document.rootElement.children) {
// NSLog(@"---->%@", element); // --->
对应的是video对象
// 创建video对象
Video *video = [[Video
alloc] init];
// 这个遍历就是取出Video对应的所有属性值
for (GDataXMLElement *node
in element.children) {
// NSLog(@"===>%@ ---> %@", node.name, node.stringValue);
//
在这里给给对象赋值
[video setValue:node.stringValue
forKeyPath:node.name];
}
// 跟踪attributes
// NSLog(@"%@", element.attributes);
// 遍历element.attributes数组,拿到属性值
for (GDataXMLNode *att
in element.attributes) {
// NSLog(@"att.name = %@ att.stringValue = %@", att.name, att.stringValue);
// kvc
[video setValue:att.stringValue
forKeyPath:att.name];
}
// 模型添加到数组
[self
a76a
.videos
addObject:video];
}
NSLog(@"搞定 %@",
self.videos);
}];
}
@end
相关文章推荐
- XML 与 JSON 优劣对比
- As3.0 xml + Loader应用代码
- DVI 视频接口图文解析
- Mootools 1.2教程(2) DOM选择器
- DOM 事件流详解
- IE6不能正常解析CSS文件问题的解决方法及原因分析
- 网马生成器 MS Internet Explorer XML Parsing Buffer Overflow Exploit (vista) 0day
- ext读取两种结构的xml的代码
- Dom在ajax技术中的作用说明
- C#自写的一个HTML解析类(类似XElement语法)
- C#针对xml基本操作及保存配置文件应用实例
- ruby 过程对象 解析
- asp下查询xml的实现代码
- sqlserver FOR XML PATH 语句的应用
- 使用sp_xml_preparedocument处理XML文档的方法
- C#域名解析简单实现方法
- C#中的Linq to Xml详解
- C#操作XML文件实例汇总
- javascript针对DOM的应用分析(三)