2012-03-27 65 views
0

我有一个plist完整的位置。我有地址,没有经纬度。我希望应用程序在用户想要查看位置的细节时进行地理编码。但是,我还希望应用程序将纬度和经度写回plist,以便下次跳过地理编码。有没有办法在plist后面只写两个值? plist在文档目录中。plist的更新部分

任何帮助或示例项目引用非常感谢

利奥

回答

0

NSDictionary有方法来读取/其内容写入的plist:

NSString* filePath = @""; // set file path here 
NSMutableDictionary* pListValues = [[NSMutableDictionary alloc] initWithContentsOfFile:filePath]; 

// modify pListValues here 

BOOL success = [pListValues writeToFile:filePath atomically:YES]; 
[pListValues release]; 
+0

谢谢!我其实有复杂的plist结构,我将它们解析成不同的数据模型。经度和纬度嵌入在最深的数据模型中。我试图触发我的应用程序从最上面的数据模型中写入整个文件。它使用'writeToFile'返回失败。我想这可能是因为我在数据模型中有其他自定义类的引用。 – leo 2012-03-27 08:51:26

+0

从'NSDictionary'参考:“此方法在写出文件之前递归地验证所有包含的对象是属性列表对象(NSData,NSDate,NSNumber,NSString,NSArray或NSDictionary的实例),并返回NO,如果所有对象不是属性列表对象,因为生成的文件不会是有效的属性列表。“所以你只能在你的pList中使用这些对象(然而它们可以级​​联)。 – MrTJ 2012-03-28 08:24:35