[英]parsing XML according to attributes with NSXMLParser
I would like to parse xml according to their attributes and saved as dictionary . 我想根据其属性解析xml并保存为dictionary。
the xml output seems like that xml输出看起来像这样
<Tracking event="firstElement">
http://www.firstElement.com
</Tracking>
What i am doing right now is : 我现在正在做的是:
Getting tag name which is Tracking and saving URL. 获取标签名称,即跟踪和保存URL。 But in final , which URL linked event method is unknown.
但最后,哪种URL链接事件方法是未知的。
I have to be save it on NSDictionary and call it like that : 我必须将其保存在NSDictionary上,并这样称呼它:
[dictionary objectForKey:@"firstElement"]; [dictionary objectForKey:@“ firstElement”];
-> (NSURL *) http://www.firstElement.com ->(NSURL *) http://www.firstElement.com
How can i be achieve ? 我该如何实现? Best Regards ..
最好的祝福 ..
You can get event in NSXMLParserDelegate: 您可以在NSXMLParserDelegate中获取事件:
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict
{
// reset temp data
[self.mutableData setString:@""];
if([elementName isEqualToString:@"Tracking"]) {
NSString *event = [attributeDict objectForKey:@"event"];
}
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string
{
[self.mutableData appendString:string];
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
{
if([elementName isEqualToString:@"Tracking"]) {
NSString *URL = [NSString stringWithFormat:@"%@", self.mutableData];
}
}
parse to get URL and set dictionary with @{event:URL}
解析以获取URL并使用
@{event:URL}
设置字典
mutableData is property MutableString mutableData是属性MutableString
@property (nonatomic) NSMutableString *mutableData;
Hope this help you :) 希望这对您有所帮助:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.