码迷,mamicode.com
首页 > 其他好文 > 详细

NSXMLParser(SAX解析)大文件解析

时间:2014-12-10 14:15:35      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:nsxmlparsersax解析大文件解

NSXMLParser(SAX解析)大文件解析

- (void)viewDidLoad
{
    [

{
    [
super viewDidLoad];
   
// 1.创建URL
   
NSURL *url = HMUrl(@"video?type=XML");
   
   
// 2.创建请求
   
NSURLRequest *request = [NSURLRequest requestWithURL:url];
   
   
// 3.发送请求
    [
NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
       
if (connectionError || data == nil) {
            [
MBProgressHUD showError:@"网络繁忙,请稍后再试!"];
           
return;
        }
       
       
// 解析XML数据
       
       
// 1.创建XML解析器 -- SAX -- 逐个元素往下解析
       
NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];
       
       
// 2.设置代理
        parser.
delegate = self;
       
       
// 3.开始解析(同步执行)
        [parser
parse];
       
       
// 4.刷新表格
        [
self.tableView reloadData];
    }];
}

#pragma mark - NSXMLParser的代理方法
/**
 * 
解析到文档的开头时会调用
 */

- (
void)parserDidStartDocument:(NSXMLParser *)parser
{
//    NSLog(@"parserDidStartDocument----");
}

/**
 * 
解析到一个元素的开始就会调用
 *
 * 
@param elementName   元素名称
 * 
@param attributeDict 属性字典
 */

- (
void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
   
if ([@"videos" isEqualToString:elementName]) return;

   
HMVideo *video = [HMVideo videoWithDict:attributeDict];
    [
self.videos addObject:video];
}

/**
 * 
解析到一个元素的结束就会调用
 *
 * 
@param elementName   元素名称
 */

- (
void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
//    NSLog(@"didEndElement----%@", elementName);
}

/**
 * 
解析到文档的结尾时会调用(解析结束)
 */

- (
void)parserDidEndDocument:(NSXMLParser *)parser
{
//    NSLog(@"parserDidEndDocument----");
}

NSXMLParser(SAX解析)大文件解析

标签:nsxmlparsersax解析大文件解

原文地址:http://blog.csdn.net/itcontend/article/details/41844791

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!