我正在尝试阅读,我还需要写一个plist。
到目前为止,我试图简单地阅读。
中的内容这是我的appSettings.plist:
NSBundle* bundle = [NSBundle mainBundle];
NSString* plistPath = [bundle pathForResource:@"appSettings" ofType:@"plist"];
NSDictionary *tmp = [[NSDictionary alloc] initWithContentsOfFile:plistPath];
我试着这样做:
NSArray *mruItems = [[NSArray alloc] initWithArray:[tmp objectForKey:@"lastSearches"]];
但它会引发错误。我在[tmp objectForKey:@“lastSearches”]类型上做的检查显示这不是NSArray ......
如何将内容读入我的NSArray?
谢谢!
(我希望有关于写作的一些信息)
答案 0 :(得分:2)
如果你看一下上面的截图,你会发现很明显" lastSearches"是一个字典,而不是一个列表。您可以尝试将其中的类型切换为Array类型,它应该适合您。
另一个解决方案是迭代该字典中的键:
NSDictionary *lastSearches = [tmp objectForKey:@"lastSearches"];
for (NSString *key in lastSearches.allKeys)
{
NSString *value = [lastSearches objectForKey:key];
}
请注意,这不是有序的,您可能需要在迭代之前进行排序。
答案 1 :(得分:1)
确实,它不是数组而是字典(看你的图像)。