Objective-C
iOS

NSUserdefaultsにNSMutablearrayを格納する/読み出す

More than 5 years have passed since last update.


  • 格納

NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];

NSMutableArray *array = [[NSMutableArray alloc] init];
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:array];
[ud setObject:data forKey:@"array_key"];

MutableArrayの名前がarray, array_keyは読み出すときのkey.


  • 読み出し

 NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];

NSData *data = [ud objectForKey:@"array_key"];
NSMutableArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:data];

あとは煮るなり焼くなり。

要素を変更したときは、格納コードをもう一回書いて、

[ud synchronize];

しましょう。