NSUserDefaults:用来保存应用程序设置和属性、用户保存的数据。用户再次打开程序或开机后这些数据仍然存在。NSUserDefaults可以存储的数据类型包括:NSData、NSString、NSNumber、NSDate、NSArray、NSDictionary。如果要存储其他类型,则需要转换为前面的类型,才能用NSUserDefaults存储。
保存数据:
-(void)saveSetting {
NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
//save string
NSString* saveString = @"simon";
[defaults setObject:saveString forKey:@"name"];
//save integer
NSInteger saveInt = 100;
[defaults setInteger: saveInt forKey:@"count"];
//save bool
BOOL saveBool = YES;
[defaults setBool: saveBool forKey:@"flag"];
//save image
UIImage *image=[[UIImage alloc]initWithContentsOfFile:@"photo.jpg"];
NSData *imageData = UIImageJPEGRepresentation(image, 100);//UIImage对象转换成NSData
[defaults setObject:imageData forKey:@"image"];
//用synchronize方法把数据持久化到standardUserDefaults数据库
[defaults synchronize];
}
读取数据:
-(void)getSetting {
NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
//根据键值取出name
NSString *name = [defaults objectForKey:@"name"];
NSInteger count = [defaults objectForKey:@"count"];
BOOL bflag = [defaults objectForKey:@"flag"];
NSData *imageData = [defaults dataForKey:@"image"];
UIImage *Image = [UIImage imageWithData:imageData];//NSData转换为UIImage
}
转载时请注明出处:http://blog.csdn.net/ztp800201/article/details/9160667