我正在使用NSXMLParserDelegate
方法從 XML文件中獲取數據,但我無法獲得我想要的數據。 XML文件是這樣的:Xcode NSXMLParser通過選擇多個鍵的數據
<faces>
<bounds x='70' y='250' width='438' height='438'/>
<right-eye x='208' y='424'/>
<left-eye x='368' y='426'/>
<features s-avg='0.82' s-min='0.51' s-max='0.92'>
<point id='PR' x='223' y='425' s='0.76'/>
<point id='PL' x='362' y='424' s='0.91'/>
</faces>
從這個文件我想要得到的值屬性x
,y
,並且s
只能用於屬性id
等於"PR"
點元素。 記錄該值應顯示x=223
。
這是我的分析過程:
-(void) parser:(NSXMLParser *) parser didStartElement:(NSString *) elementName namespaceURI:(NSString *) namespaceURI qualifiedName:(NSString *) qName attributes:(NSDictionary *) attributeDict {
if ([elementName isEqualToString:@"point"])
{
NSString *idvalue = [attributeDict objectForKey:@"id"];
if ([email protected]"PR")
{
NSString *xvalue = [attributeDict objectForKey:@"x"];
NSLog(@"%@",xvalue);
NSString *yvalue = [attributeDict objectForKey:@"y"];
NSLog(@"%@",yvalue);
NSString *svalue = [attributeDict objectForKey:@"s"];
NSLog(@"%@",svalue);
}
}
我會得到一個日誌,如:中x
,y
,並且s
所有元素
X=223 X=362 Y=425 Y=424 S=0.76 S=0.91
值。 我如何才能獲得僅具有屬性ID =「PR」的元素的值? 我希望有人能給我一個理由,爲什麼或者如果你能指出我的方向,最終解決這個問題,因爲它成爲背後真正的痛苦。
嘗試'如果([idvalue isEqualToString:@ 「PR」])' –