我有一個父子結構的XML文件,例如:NSXMLParser - 捕獲父級和子級信息? iPhone
<geometry id="001-mesh" name="001">
<mesh>
<source id="001-mesh-positions">
<float_array id="001-mesh-positions-array" count="228">
我能夠成功地解析使用的NSXMLParser數據。然而,問題是我想存儲與父項相關的子信息 - 例如,當檢測到幾何ID時,我想要存儲關聯的源ID和float_array ID。
任何人都可以提出一種方法,我可以嗎?下面的代碼將檢測在解析過程中何時找到給定的元素,但我不知道如何存儲這些值。
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict {
// NSLog(@"Parse Started");
//NSLog(@"Element Name is %@", elementName);
if([elementName isEqualToString:@"geometry"]) {
NSLog(@"Object Detected");
NSString *name = [attributeDict objectForKey:@"name"];
NSLog(@"Name is %@",name);
}
if ([elementName isEqualToString:@"float_array"]) {
NSLog(@"Vertices Detected");
NSString * vertices = [attributeDict objectForKey:@"count"];
NSLog(@"Vertices are %@", vertices);
}
}
感謝 - 但問題這裏是xml文件中其他父項下的float_array標記的其他實例。我只想創建一個對象,如果父母是幾何。這可能嗎? – GuybrushThreepwood 2012-02-14 14:40:05
@Ohnomycoco絕對:在did end元素方法中添加代碼以將'myGeometry'設置爲'nil'。 – dasblinkenlight 2012-02-14 14:47:05