NSXML解析器读取属性
|
我有一个重复的元素,我需要读取它的属性并将其发送给委托
xml是:
<special>
<day date=\"22/04/2011\" name=\"Easter Friday\">Closed</day>
<day date=\"23/04/2011\" name=\"Easter Saturday\">10:00-16:00</day>
<day date=\"24/04/2011\" name=\"Easter Sunday\">Closed</day>
<day date=\"25/04/2011\" name=\"Anzac Day\">13:00-17:00</day>
<day date=\"26/04/2011\" name=\"Easter Tuesday\">09:00-18:00</day>
</special>
我只过去了代表的日期和名称的最后一个属性,我知道为什么会这样,但是我不知道如何解决。有人能帮我吗
这是我的目标C代码
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict {
if ([elementName isEqualToString:@\"special\"]) {
storeAppDelegate.openingHoursSpecialDelegate = [[NSMutableArray alloc] init];
}else if ([elementName isEqualToString:@\"day\"]) {
openingHoursView = [[OpeningHoursView alloc] init];
openingHoursView.name = [attributeDict objectForKey:@\"name\"];
openingHoursView.date = [attributeDict valueForKey:@\"date\"];
}
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName {
if ([elementName isEqualToString:@\"special\"])
return;
if ([elementName isEqualToString:@\"day\"]){
[storeAppDelegate.openingHoursSpecialDelegate addObject:openingHoursView];
[openingHoursView release];
openingHoursView = nil;
}
}
OpeningHoursSpecialDelegate是应用程序委托中的可变数组,而OpeningHoursView是一个NSObject,在另一个类中的名称和日期为字符串。它们还获取应用程序委托的值,并且它也是XML文件中\“ date \”和\“ name \”属性的最后读取值。
我正在使用NSXML解析器
所以我的问题又是如何获取\“ openingHoursView.name \”和\\“ openingHoursView.date \”来写入他们获得的每个值openHoursSpecialDelegate而不是像现在这样覆盖它们
没有找到相关结果
已邀请:
2 个回复
珊畴炮贩号
膝垫富顷