2009-06-04 78 views

回答

6

你会放在资源文件夹。然后使用这样的东西来加载它:

NSString *file = [[NSBundle mainBundle] pathForResource:@"TwitterUsers" ofType:@"plist"]; 
NSArray *Props = [[NSArray alloc] initWithContentsOfFile:file]; 

其中,TwitterUsers是你的plist文件的名称。

如果你的plist文件包含键和值,你可以将第二行改为NSDictionary而不是NSArray。

+0

嘿,我想保留在文件forder ..怎么办? – nbojja 2009-06-04 04:50:18

+1

这不是针对文档文件夹,这会导致部署到iPhone时出现问题。 – zsong 2011-02-06 16:11:24

3

我建议将它保存在应用程序包的Res​​ources目录中,但您可以将它拖到项目窗口中。 NSBundle方法pathForResource:ofType:应该给你一个路径,你可以传递给NSDictionarydictionaryWithContentsOfFile:

编辑:对不起,完整的代码示例(以为我已经复制粘贴&):

NSString *path = [[NSBundle mainBundle] pathForResource:@"MyConfig" ofType:@"plist"]; 
NSDictionary *myConfig = [NSDictionary dictionaryWithContentsOfFile:path]; 
+0

嘿,我想保留在文件forder ..如何做到这一点? – nbojja 2009-06-04 04:51:36

3

编辑只是发生在我“配置变量”可能不会是一成不变的。如果是这样,请忽略这个答案。

我建议你使用NSUserDefaults来存储配置变量,而不是滚动你自己的系统。

如果您正在修改应用程序包内的.plist,那么您将冒着使包上的签名无效的风险,但结果不好。

如果您必须存储和修改自己的.plist,将其存储在Documents目录,这也是您的应用程序应该存储任何东西,它的下载,创建等见File and Data ManagementNSFileManager

0

你可以找到实例sqlite的书.....的silte数据文件被保存到目录“文档” ....你就会知道prcess

6

要存储的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”]; 
1

默认情况下,如果你已经包含在项目的任何地方的plist(下资源或其他方式)的XCode将它复制到应用程序包,你可以通过前面提到的pathForResource来打电话。只是认为我会提到,因为你可能更喜欢一个分组,你没有资源...

0
  1. 它为什么会使捆绑无效?

  2. 资源文件夹中的这个plist文件是否会在iTunes文件夹中的文件中备份?

相关问题