- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
//准备网络的字符串数据
NSString *urlStr = @"http://flash.weather.com.cn/wmaps/xml/beijing.xml";
//把字符串类型的网址转化为NSURL类型
NSURL *url = [NSURL URLWithString:urlStr];
//使用URL实例化网络请求实例
NSURLRequest *request = [NSURLRequest requestWithURL:url];
//同步读取到网络上的数据
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
//实例化一个具体的解析类对象
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:data];
//设置解析代理对象
xmlParser.delegate = self;
//调用方法开始解析xml文件
[xmlParser parse];
}
#pragma mark -NSXMLParserDelegate
#pragma mark -文档开始读取
- (void)parserDidStartDocument:(NSXMLParser *)parser
{
//实例化存储数据的数组
self.arrList = [NSMutableArray array];
}
#pragma mark -解析标签开始
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
//首先用属性fromTagFlag获取elementName,供后面使用
self.formTagFlag = elementName;
//因为数据都是存储在属性中的,全部存储在了attributeDict里面了,在这里直接打印下
NSLog(@"%@",attributeDict);
}
#pragma mark -获取标签数据对应的数据
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
//因为数据迪欧存储在了属性值中,所有不需要解析字标签
}
#pragma mark -文档结束读取
- (void)parserDidEndDocument:(NSXMLParser *)parser
{
//打印获取到的数据的数组
NSLog(@"%@",self.arrList);
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。