1.xml 数据包括

文档声明:格式<?xml version="1.0" encoding="UTF-8" ?>

元素:<vidwo>小黄人</video> 包括开始标签和结束标签

2.xml 解析有两种方式

1.>DOM:一次性将整个xml文档加载到内存,比较适合解析小文件

2.>SAX:从根元素开始,安顺序一个元素一个元素往下解析,比较适合解析大文件

介绍两种常用的解析方法:

 NSXMLParser :SAX方式解析,使用简单 ,这是苹果系统自带方法 即大文件使用

 第三方框架:GDataXML:DOM方式解析,由google开发, 即小文件使用

由于GDataXML是基于lixml2,所以需要倒入此动态库

以下讲解GDataXML方式解析xml

NSURL*url=HMUrl(NSURLRequest*request=[NSURLConnectionsendAsynchronousRequest:requestqueue:[NSOperationQueuemainQueue]completionHandler:^(NSURLResponse*response,NSData*data,NSError*(connectionError||data==GDataXMLDocument*doc=[[GDataXMLDocumentalloc]initWithData:dataoptions:GDataXMLElement*root=NSArray*elements=[rootelementsForName:(GDataXMLElement*videoElement*video=video.=[videoElementattributeForName:=[videoElementattributeForName:=[videoElementattributeForName:=[videoElementattributeForName:=[videoElementattributeForName:mark-Tableviewdatasource-(NSInteger)tableView:(UITableView*-(UITableViewCell*)tableView:(UITableView*)tableViewcellForRowAtIndexPath:(NSIndexPath*NSString*ID=*cell=(!=*video===[NSStringstringWithFormat:NSURL*url=NSURL*url=HMUrl(NSURLRequest*request=[NSURLConnectionsendAsynchronousRequest:requestqueue:[NSOperationQueuemainQueue]completionHandler:^(NSURLResponse*response,NSData*data,NSError*(connectionError||data==NSXMLParser*parser=parser.=mark-NSXMLParser的代理方法-()parserDidStartDocument:(NSXMLParser*-()parser:(NSXMLParser*)parserdidStartElement:(NSString*)elementNamenamespaceURI:(NSString*)namespaceURIqualifiedName:(NSString*)qNameattributes:(NSDictionary*([isEqualToString:elementName])*video=-()parser:(NSXMLParser*)parserdidEndElement:(NSString*)elementNamenamespaceURI:(NSString*)namespaceURIqualifiedName:(NSString*-()parserDidEndDocument:(NSXMLParser*}