我目前正試圖解析一些xml數據到NSDictionary
。這是我第一次嘗試這樣的事情並感到有點不確定我在做什麼,解析XML到NSMutableDictionary
首先我解析一些XML看起來大致是這樣的 -
<Rows>
<Row ID="76" MANF="JARD" ISMANUF="F" ISSER="F"/>
<Row ID="38" MANF ="SANBIN" ISMANUF ="F" ISSER ="T"/>
<Rows>
我使用在NSXMLParser
代表,所以使用NSLog
NSLog(@"attributes: %@", attributeDict);
上parser:didStartElement:namespaceURI:qualifiedName:attributes:
委託方法和我的輸出看起來是這樣的。
}
2011-10-11 08:01:15.472 Code[526:207] attributes: {
ISMANUF = F;
ISSER = T;
MANF = smart;
ID = 74;
}
2011-10-11 08:01:15.472 Code[526:207] attributes: {
ISMANUF = F;
ISSER = T;
MANF = "weather guard";
ID = 71;
}
現在我正在找這個東西解析爲NSMutableDictionary
,但我不是如何去這toatly肯定...我希望做這樣的事情
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict {
if ([elementName isEqualToString:@"row"]) {
myDic = [[myDic alloc] init];
myDic.isManuf = [attributeDict objectForKey:@"ISMANUF"];
myDic.isSer = [attributeDict valueForKey:@"ISSER"];
myDic.Manf = [attributeDict valueForKey:@"MANF"]
myDic.id = [attributeDict valueForKey:@"ID"]
}
}
我的問題就變成了這種看起來正確嗎?然後如果是的話,我該如何在頭文件中聲明這個可變字典?以及如何我宣佈.isManuf .isSer.Manf .id爲此NSMutableDictionary
我可以在方法中使用qualifiedName變量來使它與NSMutableDictionary一起使用嗎? –