我在访问NSDictionary中的对象时遇到问题。
应用程序从Web服务器下载XML,然后使用XMLReader lib将其解析为NSDictionary。现在我不知道如何访问NSDictionary中的对象。
我的xml结构是:
<xml>
<categories>
<category id="1" name="test">
<questions>
<question id="1" category_id="1" question="boxes?"/>
<question id="2" category_id="1" question="cash?"/>
</questions>
</category>
<category id="2" name="blah">
<questions>
<question id="3" category_id="2" question="hara?"/>
</questions>
</category>
</categories>
NSURL *url = [[NSURL alloc] initWithString:@"http://localhost/DoNotForget/API/database.xml"];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [NSString stringWithFormat:@"%@/%@", documentsDirectory,@"database.xml"];
[request setDownloadDestinationPath:filePath];
[request startSynchronous];
NSData *data = [NSData dataWithContentsOfFile: filePath];
NSError *err;
NSDictionary *test = [XMLReader dictionaryForXMLData:data error:err];
NSLog(@"%@", test);
我怎么能在类别项目上运行循环,或者例如在类别id 1中访问问题ID 1?
抱歉我的英文不好, 请帮我。 谢谢!
答案 0 :(得分:0)
这样的东西不起作用?
访问问题
MyQuestion * question = [[test objectForKey:@“1”] objectForKey:@“1”];
2.应该运作良好
for(NSString * key in test){ id value = [test objectForKey:key]; //使用Object或您可以使用代码 以上访问里面的财产 }