NSUserDefaults 在咱們編寫代碼中是最經常使用的一個永久保存數據的方法,也是最簡單的。spa
使用NSUserDefault須要注意:blog
1.數據的本地化保存不是實時的,若是須要實時保存,調用synchronize方法。it
2.保存的數據必須是「不可變的」。class
3.保存數據數據使用 setObjectforKey(不一樣數據類型提供了不一樣的方法,例如保存Integer使用SetIntegerforKey等),同理讀取使用ObjectforKey(IntegerforKey)。object
- (void) btnClick : (UIButton*) sender { NSInteger tag = sender.tag; NSUserDefaults *def = [NSUserDefaults standardUserDefaults]; if(tag == 101) { [def setInteger:31 forKey:@"age"]; [def setObject:@"harry" forKey:@"name"]; NSArray *array = [NSArray arrayWithObjects:@"tongji", @"cumt", @"wsyz", nil]; [def setObject:array forKey:@"edu"]; //強制寫入文件 [def synchronize]; } else if (tag == 102) { NSInteger age = [def integerForKey:@"age"]; NSString *name = [def objectForKey:@"name"]; NSArray *edu = [def objectForKey:@"edu"]; NSLog(@"name is %@, age is %ld, edu is %@", name, (long)age, edu); } }