This answer可能會幫助你。使用核心數據在這裏可能是過度的,保存到plist是非常容易的。這是從鏈接的問題伯努瓦的回答是:
NSString *error;
NSString *rootPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES) objectAtIndex:0];
NSString *plistPath = [rootPath stringByAppendingPathComponent:@"yourFile.plist"];
NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:rootObj
format:NSPropertyListXMLFormat_v1_0 errorDescription:&error];
if(plistData) {
[plistData writeToFile:plistPath atomically:YES];
}
else {
NSLog(@"Error : %@",error);
[error release];
}
其中rootObj
是你想序列化,在這種情況下,您的陣列/字典的對象。
另外,如果你要經常你的應用程序的過程中被讀取/寫入這些數據,使用singleton它可以使一個巨大差的性能代價,而不是不斷地讀/自寫/到一個文件。您可以在應用程序啓動時將所有數據加載到單例中,並在applicationWillTerminate
上保存。
要回答你的數組/字典問題,這取決於你如何獲得你的字符串以及你希望如何訂購它們。對數組排序非常簡單,您可以在this答案中看到。
感謝您的回覆,Rickay。你一直很徹底。然而,我發現了一個教程,同樣的事情,我認爲它更適合我的需求:http://ipgames.wordpress.com/tutorials/writeread-data-to-plist-file/ 此外,感謝單身人士的建議,但現在我不太瞭解它是如何工作的以及如何使用它。如果我真的遇到問題,可能我會回到這個問題。 我會試試這個方法,如果有任何問題會回來 – 2012-02-05 19:23:51
好的,祝你好運! – 2012-02-05 19:32:50
謝謝,我需要它;)接近開發我的第一個應用程序的結尾,所以我非常興奮:D – 2012-02-05 19:34:40