我正在使用来自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];
}
答案 0 :(得分:1)
如果data.plist在资源目录中,请获取如下路径:
filePath = [[NSBundle mainBundle] pathForResource:@"data" ofType:@"plist"];
如果目的是修改文件,那么当它不存在时,你会将它复制到文件目录。您无法写入捆绑包中的文件,这是存储资源的位置。
答案 1 :(得分:0)
您是否首先将文件写入文档目录?如果没有,它就不会在那里......