我遇到了一个无法解决的问题:我在plist中有以下数组:
//userSettings.plist
<plist version="1.0">
<array>
<integer>2</integer>
<string>4</string>
<integer>0</integer>
<integer>1</integer>
</array>
</plist>
我正在尝试加载如下:
NSString *settingsDataPath = [[self docsDir]stringByAppendingPathComponent:@"userSettings.plist"];
if (![[NSFileManager defaultManager]fileExistsAtPath:settingsDataPath]) {
[[NSFileManager defaultManager]copyItemAtPath:[[NSBundle mainBundle] pathForResource:@"userSettings" ofType:@"plist"] toPath:settingsDataPath error:&error];
}
BOOL success = [[NSFileManager defaultManager] fileExistsAtPath:settingsDataPath];
NSLog(@"%hhd", success);
userSettings = [NSArray arrayWithContentsOfFile:settingsDataPath];
NSLog(@"%d", [userSettings count]);
成功布尔值返回TRUE,但是当我执行[userSettings count]的NSLog时,我的结果总是0,即我的数组总是空的......
我不知道我还能做什么...
Ty guys !!!
答案 0 :(得分:1)
我找到了错误的家伙。问题是,当我第一次在界面构建器中创建plist时,创建为Dictionary ...只有在我移动到Array之后。问题是存储在应用程序内部的plist没有更新。当我删除这个plist时,一切都按原样运行!
感谢大家的帮助!
修改前
修改后