私のアプリケーションのモデルは、それぞれが特定の数の NSDictionaries を含む他のいくつかの NSMutableArray を含む NSMutableArray で構成されています。コア データを使用せずにメイン配列を深く格納する方法はありますか (つまり、それとそのすべてのコンテンツを格納することを意味します)。まだ使い方がわからない?現時点では、NSUserDefaults の使用方法を知っていますが、NSUserDefaults を使用して配列を深く保存する方法はありますか?
質問する
55 次
3 に答える
1
配列とそのすべての内容 (辞書を含む) にプロパティ リスト互換オブジェクトのみが含まれている場合は、NSUserDefaults
.
プロパティ リストと互換性のあるクラスは次のとおりです。
NSString
NSDate
NSData
NSNumber
NSValue
NSArray
NSDictionary
于 2012-09-24T13:19:45.660 に答える
0
NSUserDefaultsのいずれかを試してください
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:rootArray forKey:@"myKey"];
...
NSArray *savedArray = [defaults objectForKey:@"myKey"];
データが小さい場合、または大きい場合はNSCoding
// To save to disk
[NSKeyedArchiver archiveRootObject:rootArray toFile:@"filePath"];
// To load from disk
NSArray *savedArray = [NSKeyedUnarchiver unarchiveObjectWithFile:@"filePath"];
または、sqlite3 C ラッパーを見ることができますか?
于 2012-09-24T13:20:27.737 に答える
0
ニコライの答えに従うには、独自のカスタムオブジェクトを配列と辞書に入れる場合は、それらがシリアル化できることを確認してください。
于 2012-09-24T13:21:06.207 に答える