2012-03-27 63 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