数据存储之偏好设置NSUserDefaults
2015-04-21 17:36
162 查看
NSUserDefaults做数据存储也是比较常用,适合轻量级的本地数据存储,读取也很方便。
一、支持的数据类型如下图(NSString、NSArray、NSDictionary、NSData、NSInteger、float、double、BOOL、NSURL)
![](http://images.cnitblog.com/blog2015/733213/201504/211802438281210.jpg)
二、使用Demo
三、运行结果
NSUserDefaults保存在Library/Preferences下
![](http://images.cnitblog.com/blog2015/733213/201504/220956199219171.jpg)
一、支持的数据类型如下图(NSString、NSArray、NSDictionary、NSData、NSInteger、float、double、BOOL、NSURL)
![](http://images.cnitblog.com/blog2015/733213/201504/211802438281210.jpg)
二、使用Demo
// // ViewController.m // NSUserDefaults // // Created by City--Online on 15/4/21. // Copyright (c) 2015年 CYW. All rights reserved. // #import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; #if 0 //保存数据 NSString *mystring=@"cuiyw"; int myint=12; float myfloat=12.0; double mydouble=12.00; NSDate *mydate=[NSDate date]; NSArray *myarray=[[NSArray alloc]initWithObjects:@"a",@"b",@"c",nil]; NSDictionary *mydic=[[NSDictionary alloc]initWithObjects:@[@"cui",@"yanwei"] forKeys:@[@"1",@"2"]]; BOOL mybool=YES; NSData *mydata=[mystring dataUsingEncoding:NSUTF8StringEncoding]; NSURL *myUrl=[[NSURL alloc]initWithString:@"http://www.baidu.com"]; NSUserDefaults *userDefaults=[NSUserDefaults standardUserDefaults]; // 设置数据 [userDefaults setObject:mystring forKey:@"mystring"]; [userDefaults setInteger:myint forKey:@"myint"]; [userDefaults setDouble:mydouble forKey:@"mydouble"]; [userDefaults setFloat:myfloat forKey:@"myfloat"]; [userDefaults setObject:mydate forKey:@"mydate"]; [userDefaults setObject:myarray forKey:@"myarray"]; [userDefaults setObject:mydic forKey:@"mydic"]; [userDefaults setBool:mybool forKey:@"mybool"]; [userDefaults setObject:mydata forKey:@"mydata"]; [userDefaults setURL:myUrl forKey:@"myUrl"]; //数据立即保存 [userDefaults synchronize]; NSLog(@"%@",NSTemporaryDirectory()); #endif #if 1 NSUserDefaults *userDefaults=[NSUserDefaults standardUserDefaults]; NSString *myString=[userDefaults stringForKey:@"mystring"]; NSInteger myint=[userDefaults integerForKey:@"myint"]; float myfloat=[userDefaults floatForKey:@"myfloat"]; NSDate *mydate=[userDefaults objectForKey:@"mydate"]; NSArray *myarray=[userDefaults arrayForKey:@"myarray"]; NSDictionary *mydic=[userDefaults dictionaryForKey:@"mydic"]; BOOL mybool=[userDefaults boolForKey:@"mybool"]; NSString *mydata=[[NSString alloc]initWithData:[userDefaults dataForKey:@"mydata"] encoding:NSUTF8StringEncoding] ; NSURL *myUrl=[userDefaults URLForKey:@"myUrl"]; NSLog(@"myString:%@\nmyint:%ld\nmyfloat:%lf\nmydate:%@\nmyarray:%@\nmydic:%@\nmybool:%d\nmydata:%@\nmyUrl:%@",myString,myint,myfloat,mydate,myarray,mydic,mybool,mydata,myUrl); //可以通过removeObjectForKey移除 //[userDefaults removeObjectForKey:@"mystring"]; #endif } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end
三、运行结果
NSUserDefaults保存在Library/Preferences下
![](http://images.cnitblog.com/blog2015/733213/201504/220956199219171.jpg)
![](http://images.cnitblog.com/blog2015/733213/201504/220956320463834.jpg)
相关文章推荐
- iOS中的几种数据存储方式(plist存储、偏好设置存储、归档存储)
- 28.数据存储 plist 偏好设置 归档
- 5 偏好设置(数据存储)
- 数据存储之Archiver、Unarchiver、偏好设置
- iOS开发UI篇—ios应用数据存储方式(偏好设置)
- iOS开发UI篇—ios应用数据存储方式(偏好设置)
- 1211笔记关于//modal//更改窗口的根控制器//数据存取//Plist属性列表//-“沙盒机制”//plis属性列表//偏好设置//归档普通对象//联系人数据存储//协议与回调函数
- 三种数据存储方式: plist存储,偏好设置,归档
- iOS开发UI篇—ios应用数据存储方式(偏好设置)
- iOS开发之数据存储之Preference(偏好设置)
- 数据在沙盒中存储的三种方法---plist存储,偏好设置存储,归档
- Android中数据存储----偏好设置
- 最全iOS数据存储方法介绍:FMDB,SQLite3 ,Core Data,Plist,Preference偏好设置,NSKeyedArchiver归档
- UI进阶第六发:ios应用数据存储方式(偏好设置)
- NSUserDefaults—ios应用数据存储方式(偏好设置)
- 数据的存储方式:plist、归档、用户偏好设置
- ios应用数据存储方式(偏好设置)
- 沙盒路径下存储和读取数据 缓存文件、偏好设置文件、plist文件
- iOS开发之数据存储(偏好设置)
- iOS数据存储持久化(plist,偏好设置,归档)