在不使用iPhone SImulator的情况下在Plist文件上读/写?

时间:2010-06-05 21:02:31

标签: iphone objective-c

我正在使用来自apress的iphone开发者书中的一个例子。 问题是这个例子只适用于模拟器我试图找出如何使它在设备上工作。本章根本不起作用。下面是示例代码。 data.plist位于资源文件夹中。

    NSArray *paths  = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
return [documentsDirectory stringByAppendingPathComponent:kFilename];

然后检查文件是否找到。这是跳过的,所以我猜这个找不到文件。

if ([[NSFileManager defaultManager]fileExistsAtPath:filePath]) {
    NSArray *array = [[NSArray alloc] initWithContentsOfFile:filePath];
    BGDataSave = [array objectAtIndex:0];
    NSLog(@"%@", BGDataSave);
    price.text = [array objectAtIndex:1];
    percent.text = [array objectAtIndex:2];
    salepriceLabel.text = [array objectAtIndex:3];
    origpriceLabel.text = [array objectAtIndex:4];
}

2 个答案:

答案 0 :(得分:1)

如果data.plist在资源目录中,请获取如下路径:

filePath = [[NSBundle mainBundle] pathForResource:@"data" ofType:@"plist"];

如果目的是修改文件,那么当它不存在时,你会将它复制到文件目录。您无法写入捆绑包中的文件,这是存储资源的位置。

答案 1 :(得分:0)

您是否首先将文件写入文档目录?如果没有,它就不会在那里......