如何更新.plist中的整数值?

时间:2010-11-14 12:24:19

标签: iphone database cocos2d-iphone plist

我想更新“Secret.plist”中的整数值。 这是*图片:http://img214.imageshack.us/img214/8005/bildschirmfoto20101114u.png

现在,在我的应用程序中,我想要更改黄金值,这是我目前的代码:

NSString *path = [[NSBundle mainBundle] pathForResource:@"Secret" ofType:@"plist"];
NSMutableDictionary *tempDict = [[NSMutableDictionary alloc] initWithContentsOfFile:path];

NSNumber *goldNumber = [NSNumber numberWithInt:1234];
[tempDict setObject:goldNumber forKey:@"Gold"];
[tempDict writeToFile:path atomically:YES];

我的.plist在执行应用程序后没有更新,仍然有“5000”而不是“1234”。我做错了什么?

编辑:退出应用程序后,我的.plist中的新值未保存/更新。只要应用程序运行,值就会以某种方式更新。因此,当我更新它后检索值时,它是正确的。当我重新启动我的应用程序时,它不再更新。 NSMutableDictionary * tempDict = [[NSMutableDictionary alloc] initWithContentsOfFile:path];

    [tempDict setObject:@"A new String." forKey:@"key"];
    [tempDict writeToFile:path atomically:YES];

即便是这个也不适合我。有没有人能够将我的数据保存到我的.plist中,这样我可以在重新启动应用程序时检索它?

1 个答案:

答案 0 :(得分:0)

这个Secret.plist是否位于应用包中?如果要编辑文件,则应将其复制到应用程序包之外。有标准目录,您可以放置​​东西。

NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [documentPaths objectAtIndex:0];

documentsDir是您可以放置​​它的地方。

除此之外,代码看起来很好。