【发布时间】:2015-09-10 18:19:31
【问题描述】:
我需要从这个特定地址 (https://www.cnb.cz/cs/financni_trhy/devizovy_trh/kurzy_devizoveho_trhu/denni_kurz.xml) 获取 XML 数据。但是当我运行应用程序时,什么也没有发生。也老实说我不知道如何从上面的 xml 中获取 id 1、id 2 等等。我会很高兴你的任何建议。谢谢
- (id)initWithArray: (NSMutableArray *)slovoArray {
self = [super init];
if (self) {
self.slovoArray = slovoArray;
}
return self;
}
- (void)parseXMLFile
{
NSURL *url = [[NSURL alloc] initWithString:@"https://www.cnb.cz/cs/financni_trhy/devizovy_trh/kurzy_devizoveho_trhu/denni_kurz.xml"];
self.parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
self.parser.delegate = self;
[self.parser parse];
}
- (void)parser:(NSXMLParser *)parser
didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI
qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict {
self.element = elementName;
if ([_element isEqualToString:@"radek"]) {
_item = [[NSMutableDictionary alloc] init];
self.kod = [[NSMutableString alloc] init];
self.kurz = [[NSMutableString alloc] init];
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
if ([self.element isEqualToString:@"kod"])
{
[self.kod appendString:string];
}
else if ([self.element isEqualToString:@"kurz"])
{
[self.kurz appendString:string];
}
}
- (void)parser:(NSXMLParser *)parser
didEndElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI
qualifiedName:(NSString *)qName {
if ([elementName isEqualToString:@"radek"]) {
Slova *thisSlovo = [[Slova alloc] initWithName:self.kod
kurz:self.kurz];
[self.slovoArray addObject:thisSlovo];
}
self.element = nil;
}
@end
【问题讨论】: