NSUserDefaults的使用

NSUserDefaults的使用

在iOS中存储数据有很多种方式,常用的有NSUserDefaults,sqlite,CoreData等等,但是他们的用途又各有不同。其中NSUserDefaults用来存储类似用户的配置等较为简单的数据,而后两者较多用于存储大批量的,比较复杂的数据。在这里我们简单看下NSUserDefaults的简单用法。

NSUserDefaults非常好用,并不需要用户在程序中设置NSUserDefaults的全局变量,需要在哪里使NSUserDefaults的数据,那么就在哪里创建一个NSUserDefaults对象,然后进行读或者写操作(存储,传值)。

写一个简单的例子:

一、存储

NSUserDefaults *mySettingData = [NSUserDefaults standardUserDefaults];//创建NSUserDefaults 

创建NSUserDefaults对象之后即可往里面添加数据,它支持的数据类型有NSString、 NSNumber、NSDate、 NSArray、NSDictionary、BOOL、NSInteger、NSFloat等系统定义的数据类型,如果要存放自定义的对象(如自定义的类对象),则必须将其转换成NSData存储:

 NSArray *arr = [[NSArray alloc] initWithObjects:@"arr1", @"arr2", nil] 

  [mySettingData setObject:arr forKey:@"arrItem"];

  [mySettingData setObject:@"admin" forKey:@"user_name"]; 

 [mySettingData setBOOL:@YES forKey:@"auto_login"]; 

  [mySettingData setInteger:1 forKey:@"count"];

  [NSUserDefaults standardUserDefaults]synchronize;

 注:使用[[NSUserDefaultsstandardUserDefaults]synchronize]命令直接同步到文件里,来避免数据的丢失

二、读取

NSUserDefault  * mySettingData =[NSUserDefault standardUserDefault];

BOOL isonline = [mySettingData boolForKey:@"auto_login"];

NSInteger onlineUserNumber = [mySettingData integerForKey:@"count"];

 

三、移除数据

[mySettingData removeObjectForKey:@"arrItem"]; 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值