Ios 来自.plist的整数
我是新手,我真的需要用一个。我有一个plist,不同的数字存储在两个字典下。我需要得到存储的那个数字,并使它成为一个整数。此进程将从名为“readPlist”的方法运行 plist称为“properties.plist”。第一本字典叫做“敌人”。它包含各种其他字典,这些字典的名称存储在名为“SpriteType”的NSMutableString中。数字名称的格式为“L-%d”,其中%d是一个称为“LevelNumber”的整数 如果可能的话,有人能告诉我如何使用上面的信息和字典名称获取整数的代码吗 我已经研究了如何访问plist,但是人们展示的代码不起作用 提前谢谢 编辑:也让它更容易理解,这是我的建议。我希望在一个名为'SpriteNumber'的整数中,等于'L-%d'的值Ios 来自.plist的整数,ios,properties,cocos2d-iphone,plist,Ios,Properties,Cocos2d Iphone,Plist,我是新手,我真的需要用一个。我有一个plist,不同的数字存储在两个字典下。我需要得到存储的那个数字,并使它成为一个整数。此进程将从名为“readPlist”的方法运行 plist称为“properties.plist”。第一本字典叫做“敌人”。它包含各种其他字典,这些字典的名称存储在名为“SpriteType”的NSMutableString中。数字名称的格式为“L-%d”,其中%d是一个称为“LevelNumber”的整数 如果可能的话,有人能告诉我如何使用上面的信息和字典名称获取整数的代码
如果您将plist的内容读入字典(我不会告诉您如何操作,但这是我经常参考的教程),那么就需要使用
[[myDictionary objectForKey:@“key”]stringValue]从键中取出该级别的字符串代码>。然后,使用NSString非常有用的-stringbyreplacingoccurrencesofstring:withString:
,去掉“L-”部分,只得到一个数值。最后,使用[myString intValue]
从字符串中获取一个整数。最简单的方法是:
-(int) getMosquitoCountForLevel:(int) level {
int mosquitoCount=0;
NSString *gsFile = @"whateverFullyQualifiedFileNameYourPlistIs";
NSDictionary* definitions = [NSDictionary dictionaryWithContentsOfFile:gsFile];
NSDictionary* mosquitos = [definitions objectForKey:@"Mosquito"];
if(mosquitos) {
NSString *levelKey = [NSString stringWithFormat:@"L - %d",level];
NSNumber *mosquitoCountAsNumber = [mosquitos objectForKey:levelKey];
if(mosquitoCountAsNumber) {
mosquitoCount=[mosquitoCountAsNumber intValue];
} else {
CCLOGERROR(@"%@ - Mosquito definitions in %@ does not contain a en entry for level %@.",self.class,gsFile,levelKey);
}
} else {
CCLOGERROR(@"%@ - file %@ does not contain a Mosquito dictionary.",self.class,gsFile);
}
return mosquitoCount;
}
这是编译的,但没有用实际数据进行测试。我只是添加了一个图像,让我想要的稍微清晰一点。啊!因此,键将是L-%d
,对象将已经是一个整数。这让你的生活变得简单了,我的朋友。好吧,我有代码,但在部分中:SpriteNumber=[[savedStock objectForKey:@“L-%d”,LevelNumber]intValue];我得到一个错误,说“太多的argumentsto方法调用,预期为1,在LevelNumber上有2”。您知道解决此问题的方法吗?您需要使用[NSString stringWithFormat:@“L-%d”,[LevelNumber intValue]]
。因此,我想要的数字称为mosquitoCount?是的,例如,此方法将使用上述plist返回15、16和17级的整数9