NSXMLParserDelegate
XMLファイルからデータを取得するメソッドを使用していますが、必要なデータを取得できません。xmlファイルは次のようなものです。
<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 (idvalue==@"PR")
{
NSString *xvalue = [attributeDict objectForKey:@"x"];
NSLog(@"%@",xvalue);
NSString *yvalue = [attributeDict objectForKey:@"y"];
NSLog(@"%@",yvalue);
NSString *svalue = [attributeDict objectForKey:@"s"];
NSLog(@"%@",svalue);
}
}
次のようなログが表示されます。
X=223 X=362 Y=425 Y=424 S=0.76 S=0.91
x
、、y
およびs
すべての要素の値。属性ID="PR"を持つ要素の値のみを取得するにはどうすればよいですか?誰かが私に理由を教えてくれることを願っています。あるいは、この問題が背後で本当に苦痛になっているので、最終的にこの問題を解決する方向に私を向けることができれば。