我正在开发一个iPhone应用程序,我想在其中使用.plist文件来保存一些配置变量。在iphone应用程序中保留.plist文件的位置
在我的xcode在哪里创建.plist文件以及如何访问它?
谢谢,
我正在开发一个iPhone应用程序,我想在其中使用.plist文件来保存一些配置变量。在iphone应用程序中保留.plist文件的位置
在我的xcode在哪里创建.plist文件以及如何访问它?
谢谢,
你会放在资源文件夹。然后使用这样的东西来加载它:
NSString *file = [[NSBundle mainBundle] pathForResource:@"TwitterUsers" ofType:@"plist"];
NSArray *Props = [[NSArray alloc] initWithContentsOfFile:file];
其中,TwitterUsers是你的plist文件的名称。
如果你的plist文件包含键和值,你可以将第二行改为NSDictionary而不是NSArray。
我建议将它保存在应用程序包的Resources目录中,但您可以将它拖到项目窗口中。 NSBundle
方法pathForResource:ofType:
应该给你一个路径,你可以传递给NSDictionary
的dictionaryWithContentsOfFile:
。
编辑:对不起,完整的代码示例(以为我已经复制粘贴&):
NSString *path = [[NSBundle mainBundle] pathForResource:@"MyConfig" ofType:@"plist"];
NSDictionary *myConfig = [NSDictionary dictionaryWithContentsOfFile:path];
嘿,我想保留在文件forder ..如何做到这一点? – nbojja 2009-06-04 04:51:36
编辑只是发生在我“配置变量”可能不会是一成不变的。如果是这样,请忽略这个答案。
我建议你使用NSUserDefaults来存储配置变量,而不是滚动你自己的系统。
如果您正在修改应用程序包内的.plist
,那么您将冒着使包上的签名无效的风险,但结果不好。
如果您必须存储和修改自己的.plist
,将其存储在Documents
目录,这也是您的应用程序应该存储任何东西,它的下载,创建等见File and Data Management和NSFileManager。
你可以找到实例sqlite的书.....的silte数据文件被保存到目录“文档” ....你就会知道prcess
要存储的plist文件在你的文档目录您将不得不在您的应用中包含plist文件,然后在第一次启动时将其复制到Documents目录。
要访问该文件中的文件目录:
NSArray *paths =
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
// <Application Home>/Documents/foo.plist
NSString *fooPath =
[documentsPath stringByAppendingPathComponent:@“foo.plist”];
默认情况下,如果你已经包含在项目的任何地方的plist(下资源或其他方式)的XCode将它复制到应用程序包,你可以通过前面提到的pathForResource
来打电话。只是认为我会提到,因为你可能更喜欢一个分组,你没有资源...
它为什么会使捆绑无效?
资源文件夹中的这个plist文件是否会在iTunes文件夹中的文件中备份?
嘿,我想保留在文件forder ..怎么办? – nbojja 2009-06-04 04:50:18
这不是针对文档文件夹,这会导致部署到iPhone时出现问题。 – zsong 2011-02-06 16:11:24