博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS--数据存储NSUserDefaults
阅读量:6249 次
发布时间:2019-06-22

本文共 960 字,大约阅读时间需要 3 分钟。

hot3.png

今天去面试,被问道NSUserDefaults的存取并手写出来,一时想不起来,回来之后看看之前的笔记,稍作一些整理

 NSUserDefaults是一个单例,在整个程序中只有一个实例对象,可以用于数据的永久保存,支持的数据类型有NSString、 NSNumber、NSDate、 NSArray、NSDictionary、BOOL、NSInteger等系统定义的数据类型,如果要存放自定义的对象,就必须将其转换成NSData存储。 NSUserDefaults单例以 key-value 的形式存储了,存/取数据时可以使用方法 objectForKey 和 setValue:forKey:来把对象存储到相应的 plist 文件中,或者读取。

存储:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

[defaults setObject:@“思思” forKey:@"name"];
[defaults setInteger:10 forKey:@"age"];

UIImage *image =[UIImage imageNamed:@"1.png"];

NSData *imageData = UIImageJPEGRepresentation(image, 100);//把图片转化为NSData
[defaults setObject:imageData forKey:@"image"];

读取

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

NSString *name = [defaults objectForKey:@"name"]
NSInteger age = [defaults integerForKey:@"Age"];

NSData *imageData = [defaults dataForKey:@"image"];

UIImage *image = [UIImage imageWithData:imageData];

 

 

转载于:https://my.oschina.net/huangyn/blog/870334

你可能感兴趣的文章
Cocos2d之Node类详解之节点树(一)
查看>>
023-请你说一说你知道的自动化测试框架
查看>>
response (响应对象)
查看>>
java.lang.StringBuilder源码分析
查看>>
php中的单引号与双引号详解
查看>>
java代码继承super
查看>>
Eclipse远程调试应用程序
查看>>
openj9
查看>>
继承现有的控件
查看>>
装逼语录:
查看>>
PHP函数
查看>>
[Leetcode]414. Third Maximum Number
查看>>
UTC引发时区配置和Linux系统时间和bios时间问题
查看>>
C语言32个关键字
查看>>
图像处理之canny---求梯度
查看>>
OpenGL编程轻松入门之一个简单的例子
查看>>
MVC控制器返回重定向操作
查看>>
LINUX总结
查看>>
编译php5.4的时候出现错误----configure: error: in `/usr/local/src/php540/php-5.4.0':
查看>>
机器学习编程01_线性回归
查看>>