0

我是 iphone 新手。我在从 plist 文件中检索数据时遇到了一些问题。实际上我的 plist 文件看起来像这样

key Type value Genesis Dictionary (0 items) Exodus Dictionary (0 items) Leviticus Dictionary (0 items)

在这里,我如何检索 plist 文件中的字典计数,我希望输出为 3。

如果有人知道这个请帮助我...

4

4 回答 4

1

简单的答案,如果你真的接受你的问题的答案,将不胜感激。

NSDictionary *dictionary = ....
int count = [[dictionary allKeys] count]; // Will return 3. allKeys will contain (Genesis,Exodus,Leviticus)
于 2012-05-31T14:13:33.053 回答
0

这个怎么样:

NSArray *myPlistPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
                                                     NSUserDomainMask, YES); 
NSString *documentsDirectory = [myPlistPath objectAtIndex:0]; 
NSString *myPath = [documentsDirectory
                         stringByAppendingPathComponent:@"MYPLIST.plist"]; 
NSDictionary *plistDictionary = [[NSDictionary alloc] initWithContentsOfFile:myPath]; 

NSArray *array = [[plistDictionary objectForKey:0]
                      sortedArrayUsingSelector:@selector(compare:)]; 

return [NSString stringWithFormat:@"%d MyPlist", [plistDictionary count]];
于 2012-05-31T14:24:55.780 回答
0
NSString *path = [[NSBundle mainBundle] pathForResource:@"yourResource" ofType:@"plist"];

NSFileManager *fileManager = [NSFileManager defaultManager];

if ([fileManager fileExistsAtPath:path]) 
{
    NSLog(@"The file exists");
} 
else 
{
    NSLog(@"The file does not exist");
}

NSMutableDictionary *myDic = [[NSMutableDictionary alloc] initWithContentsOfFile:path];
int count = [myDic count];
NSLog(@"%d",count);
于 2012-05-31T14:12:03.863 回答
0

您的 plist 返回字典或数组,然后为了知道您的 plist 包含多少字典,您可以在字典对象上使用 count 消息。

于 2012-05-31T14:05:32.140 回答