ios - 如何从 plist 中检索字符串?

标签 ios nsarray plist nsdictionary

我有一个名为“config.plist”的 plist config.plist在 xcode 中,我试图检索注册 url(key :reg)但是当我打印结果时它显示空值?

这是我检索字符串的代码。请引用我的 plist 结构的图像。

NSMutableURLRequest *request =[[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString: [[_config objectForKey:@"URL"] objectForKey:@"reg"]]];

最佳答案

NSString *plist=[[NSBundle mainBundle] pathForResource:@"config" ofType:@"plist"];
NSDictionary *dict=[[NSDictionary alloc] initWithContentsOfFile:plist];
NSString *stringValue=dict[@"URL"][@"reg"];

编辑:了解以下内容非常重要:

上面的dict本身就是objectForKey:@"Root"

我/我们试图通过 [@"Root"][@"URL"][@"reg"] 找到不存在的。

所以为了命名约定(它存储的内容)的可读性,它应该是:

NSString *plist=[[NSBundle mainBundle] pathForResource:@"config" ofType:@"plist"];
NSDictionary *rootDict=[[NSDictionary alloc] initWithContentsOfFile:plist];
NSString *stringValue=dict[@"URL"][@"reg"];

或者,甚至

NSString *plist=[[NSBundle mainBundle] pathForResource:@"config" ofType:@"plist"];
NSString *stringValue=[[NSDictionary alloc] initWithContentsOfFile:plist][@"URL"][@"reg"];

关于ios - 如何从 plist 中检索字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15803458/

相关文章:

ios - ... 处的 bundle 包含不允许的文件 'Frameworks'

iphone - 仅将变量用于单元测试

ios - 字符串为 BEGINSWITH 特殊字符的过滤器对象的 NSPredicate

iphone - 将 UISlider 的值保存到数组不起作用

swift - Cocoa NSTask 输出提取

iphone - 全局定义服务器IP

ios - 当数据在两个字典中时,如何区分数据和json?

ios - 如何实例化/显示 TableViewController

ios - 如何创建一个包含键值对的子NSArray?

ios - 从 plist 刷新数据