数据解析
1、获取需要解析的文件或URL
2、把获取的数据转化为data
3、初始化解析对象(NSXMLParser)并设置delegate
4、实现praser的代理方法 .
NSXMLParsr 的解析方法
1、开始准备解析
-(void)parserDidStartDocument:(NSXMLParser *)parser;
2、开始解析头标签
-(void)parser:(NSXMLParser *)parser didSelectElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes :(NSDictionary *)attributeDict ;取出属性包含的值,把该值存到一个字典中,然后存放到哟个全局变量的数组
//elementName 头标签名。attributeDict代表头标签所在<>中 用=连接的内容
3、 当解析器找到开始标记和结束标记之间的字符调用-(void)parser:(NSXMLParser *)parser foundCharacters :(NSString *)string;在次方法中获取具体内容,注意:由于换行符和回车符等特殊字符也会触发该方法,因此要判断并剔除换行符和回车符
4、解析标签结束,需要-(void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName;
_fromTagFlag = nil;
该方法主要是用来 清理刚刚解析完成的元素产生的影响,以便于不影响接下来解析
5、解析结束:-(void)parserDidEndDocument:(NSXMLParser *)parser;
6、#pragma mark 解析出错
-(void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError;
JSON解析的步骤:
1、获取data数据,将data数据转化为json对象(将将连接字符转化为URL类型)