如何使用libxml解析来解析xml数据

这是我想用libxml解析解析的xml结构。

在此处输入图像描述

在此处输入图像描述

如何获取“campaign”标签的属性值,即ID和“image”标签,即urlsize

如果我使用这些值,我可以提取“code”标签和“name”标签的值。

static const char *kName_campaign = "campaign"; static const NSUInteger kLength_campaign = 9; static const char *kName_code = "code"; static const NSUInteger kLength_code = 5; static const char *kName_name = "name"; static const NSUInteger kLength_name = 5; 

然后我得到了当前和即将到来的广告系列的代码和名称。 这是我在委托中使用的代码,在完成解析时会调用它。

 static void endElementSAX(void *ctx, const xmlChar *localname, const xmlChar *prefix, const xmlChar *URI) { LibXMLParser *parser = (LibXMLParser *)ctx; if (parser.parsingASong == NO) return; if (prefix == NULL) { if (!strncmp((const char *)localname, kName_campaign, kLength_campaign)) { [parser finishedCurrentSong]; parser.parsingASong = NO; } else if (!strncmp((const char *)localname, kName_code, kLength_code)) { parser.currentSong.title = [parser currentString]; NSLog(@"Code :: %@",[parser currentString]); } else if (!strncmp((const char *)localname, kName_name, kLength_name)) { parser.currentSong.category = [parser currentString]; NSLog(@"Name :: %@",[parser currentString]); } } } 

如何从“广告系列”代码中获取ID从开头到底部的属性值。 来自“图片”标签的url尺寸

 static void startElementSAX(void *ctx, const xmlChar *localname, const xmlChar *prefix, const xmlChar *URI, int nb_namespaces, const xmlChar **namespaces, int nb_attributes, int nb_defaulted, const xmlChar **attributes) { if (nb_attributes > 0) { NSMutableDictionary* attributeDict = [NSMutableDictionary dictionaryWithCapacity:(NSUInteger)[NSNumber numberWithInt:nb_attributes]]; for (int i=0; i 

尝试这个..