每当我想从plist文件中获取数据时,我都使用以下代码:
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"FILE_NAME" ofType:@"plist"];
NSDictionary *plistData = [NSDictionary dictionaryWithContentsOfFile:filePath];
但是现在我正在尝试从Info plist中读取数据,而filePath是零。是否有不同的方法从Info plist中获取数据?
答案 0 :(得分:43)
来自我之前的SO回答。您可以通过以下内容直接访问项目的info.plist中的属性...
[[NSBundle mainBundle] objectForInfoDictionaryKey:key_name];
你的filePath只是因为无法找到文件而无法检查拼写&检查您尝试读取的文件是否实际位于捆绑包中等。
答案 1 :(得分:1)
我认为还有另一种方式(除非是info.plist文件然后看到Damo的评论),而是我会集中精力弄清楚为什么filePath是nil,也许plist文件不再是目标> build阶段>复制捆绑资源?
答案 2 :(得分:0)
替换
[[NSBundle mainBundle] pathForResource:@"FILE_NAME" ofType:@"plist"]
与
[[NSBundle mainBundle] pathForResource: @"Info" ofType: @"plist"]