/**
* 解析XML数据
*/
- (void)parserXMLData:(NSData *)data
{
//1.创建解析器
NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];
//2.设置代理
parser.delegate = self;
//3.开始解析
[parser parse];
}
#pragma mark - NSXMLParserDelegate
/**
* 开始解析文档时调用
*/
- (void)parserDidStartDocument:(NSXMLParser *)parser
{}
/**
* 结束解析文档时调用(解析完毕)
*/
- (void)parserDidEndDocument:(NSXMLParser *)parser
{}
/**
* 解析到一个元素开头时调用
*/
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary<NSString *,NSString *> *)attributeDict
{
//示例
if([@"videos" isEqualToString:elementName]){ //解析到一个videos标签
self.videos = [NSMutableArray array];
}else if ([@"video" isEqualToString:elementName]){//解析到一个video标签,创建一个模型
YKDVideo *video = [YKDVideo videoWithDict:attributeDict];
[self.videos addObject:video];
}
}
/**
* 解析到一个元素结尾时调用
*/
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{}
解析XML数据
最新推荐文章于 2024-07-11 14:13:21 发布