无效的 CfStringRef plist(字典数组)iOS

Posted

技术标签:

【中文标题】无效的 CfStringRef plist(字典数组)iOS【英文标题】:Invalid CfStringRef plist (Array of dictionaries) iOS 【发布时间】:2012-04-19 21:19:16 【问题描述】:

我的文件中有以下代码

NSString *filePath = [[NSBundle mainBundle]pathForResource:@"images" ofType:@"plist"];
                NSArray *array = [[NSArray alloc]initWithContentsOfFile:filePath];


                for (id dict in array) 


                    NSLog(@"This is the id: %@" ,[dict objectForKey:@"Id"]);

                

当我在调试器上运行它时,它会在 NSString *filePath 行上显示“无效 CfStringref”。

无论我尝试什么代码,我都无法通过这个。

有什么想法吗?

plist 也是一个字典数组,但我无法解析它们,因为代码不起作用

【问题讨论】:

支持文件?那个目录不存在。是在文档目录、库目录还是在bundle中? 在我们的 app 文件夹中,我们有一个名为 Supporting files 的目录。 main.m 在他们以及这个 plist 中。 不,在设备上,Xcode 文件夹没关系。你可以在 Xcode 中拥有数百万个文件夹,但 ios 沙盒并没有对 Xcode 的文件结构提供任何支持。那么,这是在应用程序包中吗? 是的,它在设备包中 NSLog(@"%@", [[NSBundle mainBundle]pathForResource:@"images" ofType:@"plist"]); 是返回 null 还是返回路径? 【参考方案1】:

images.plist 不在“复制捆绑资源”构建阶段,将其拖入并再次运行。

【讨论】:

以上是关于无效的 CfStringRef plist(字典数组)iOS的主要内容,如果未能解决你的问题,请参考以下文章

NSString 到 CFStringRef 和 CFStringRef 到 ARC 中的 NSString?

在 plist 中写入字典有效,然后从 plist 返回中读取字典(空)

字典的 plist 或存储

错误 ITMS-90190:“无效的 Info.plist 键。Payload/brownie.appInfo.plist 文件中的键 'UIUserInterfaceStyle' 无效。”

plist 形式的字典字典的键类型是啥?

字典--plist