***************plist存储

// 当点点击保存的时候调用     //保存
- (IBAction)save:(id)sender {
// 获取沙盒的根路径
// NSString *home = NSHomeDirectory(); // 拼接Documents路径
// NSString *docPath = [home stringByAppendingString:@"/Documents"];
//NSString *docPath = [home stringByAppendingPathComponent:@"Documents"]; /**
* NSDocumentDirectory : 查找Documents文件夹
NSUserDomainMask : 在用户的应用程序下查找
YES 把路径展开 NO 当前应用的根路径 == ~
NO ~/Documents */
NSString *docPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[];
NSLog(@"%@",docPath); // 拼接文件路径
NSString *filePath = [docPath stringByAppendingPathComponent:@"data.plist"]; // 只有具备writeToFile:的对象才能使用plist存储,NSArray
NSArray *array = @[@,@,@""]; [array writeToFile:filePath atomically:YES]; //NSLog(@"%@",docPath); } //当点击读取的时候调用 读取
- (IBAction)read:(id)sender {
NSString *docPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[];
NSLog(@"%@",docPath); // 拼接文件路径
NSString *filePath = [docPath stringByAppendingPathComponent:@"data.plist"]; NSArray *data = [NSArray arrayWithContentsOfFile:filePath];
NSLog(@"%@",data); }

********篇好设置

// 保存
- (IBAction)save:(id)sender { // [NSUserDefaults standardUserDefaults]可以直接操作偏好设置文件夹
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; // 自动帮我们生成一个plist文件存放在偏好设置的文件夹
[defaults setObject:@"hm" forKey:@"account"]; // 同步:把内存中的数据和沙盒同步
[defaults synchronize]; } //读取
- (IBAction)read:(id)sender {
// [NSUserDefaults standardUserDefaults]可以直接操作偏好设置文件夹
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSLog(@"%@",[defaults objectForKey:@"account"]); // NSDictionary *dict = @{@"account":@"hm"};
//
// dict writeToFile:<#(NSString *)#> atomically:<#(BOOL)#> }

***************对象归档

******persion.m

#import "HMPerson.h"

@implementation HMPerson

// 在对象归档的时候调用
// 哪些属性需要归档
// 这些属性怎么归档
- (void)encodeWithCoder:(NSCoder *)aCoder
{
[aCoder encodeInt:_age forKey:@"age"];
} // 在对象解档的时候调用
// 哪些属性需要解档
// 这些属性怎么解档 - (id)initWithCoder:(NSCoder *)aDecoder
{
// 当父类实现了NSCoding,就能调用 [super initWithCoder]
if (self = [super init]) {
_age = [aDecoder decodeIntForKey:@"age"];
}
return self;
} @end

****归档的保存和读取

//保存
@implementation HMViewController - (IBAction)save:(id)sender {
HMPerson *person = [HMPerson new];
person.age = ; NSString *docPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[]; // 拼接文件路径
NSString *filePath = [docPath stringByAppendingPathComponent:@"person.data"]; [NSKeyedArchiver archiveRootObject:person toFile:filePath]; }
//读取
- (IBAction)read:(id)sender {
NSString *docPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[]; // 拼接文件路径
NSString *filePath = [docPath stringByAppendingPathComponent:@"person.data"]; HMPerson *p = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath];
NSLog(@"%d",p.age);
}

IOS第13天(2,私人通讯录,plist存储,偏好设置,归档)的更多相关文章

  1. IOS第13天(3,私人通讯录,登陆状态数据存储,数据缓存, cell的滑动删除,进入编辑模式,单个位置刷新 )

    *****联系人的界面的优化 HMContactsTableViewController.m #import "HMContactsTableViewController.h" # ...

  2. IOS第13天(1,私人通讯录,登陆功能,界面的跳转传值,自定义cell,编辑界面)

    ******HMLoginViewController 登陆的界面 #import "HMLoginViewController.h" #import "MBProgre ...

  3. 持久化存储——偏好设置,plist,归档---学习笔记二

    //一. 本地持久化 //1.沙盒 //1.1 应用程序包:存放的是应用程序的源文件,包括资源文件和可执行文件 NSString *path = [[NSBundle mainBundle]bundl ...

  4. 数据存储之plist、偏好设置

    // 偏好设置--------------------------------- // 存储基本类型数据 NSUserDefaults *defaults = [NSUserDefaults stan ...

  5. 1211笔记关于//modal//更改窗口的根控制器//数据存取//Plist属性列表//-“沙盒机制”//plis属性列表//偏好设置//归档普通对象//联系人数据存储//协议与回调函数

    一.利用Modal形式展示控制器 1.如何展示// vc就是要展示的新控制器[self presentViewController:vc animated:YES completion:^{    N ...

  6. ios应用数据存储方式(偏好设置)-转

    一.简单介绍 1.很多ios应用都支持偏好设置,比如保存用户名,密码,字体大小等设置,ios提供了一套标准的解决方案来为应用加入偏好设置功能. 2.每个应用都有个NSUserDefaults实例,通过 ...

  7. [iOS基础控件 - 6.11.3] 私人通讯录Demo 控制器的数据传递、存储

    A.需求 1.搭建一个"私人通讯录"Demo 2.模拟登陆界面 账号 密码 记住密码开关 自动登陆开关 登陆按钮 3.退出注销 4.增删改查 5.恢复数据(取消修改)   这个代码 ...

  8. IOS学习之-私人通讯录

    通过一段时间IOS的学习完成了一个简单的应用,"私人通讯录". 运行效果如下图: 1.登录页 2.通讯录列表 3.添加 4.编辑 5.删除 6.注销 总视图结构如下图: 总结本程序 ...

  9. iOS开发——UI进阶篇(十一)应用沙盒,归档,解档,偏好设置,plist存储,NSData,自定义对象归档解档

    1.iOS应用数据存储的常用方式XML属性列表(plist)归档Preference(偏好设置)NSKeyedArchiver归档(NSCoding)SQLite3 Core Data 2.应用沙盒每 ...

随机推荐

  1. 让一个div在不同的显示器中永远居中

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  2. javascript关键字和保留字

    1 关键字breakcasecatchcontinuedefaultdeletedoelsefinallyforfunctionifininstanceofnewreturnswitchthisthr ...

  3. wpf中手风琴控件Accordion编辑模板后控件不正常。

    昨天有个网友Accordion控件从sl迁移到wpf时候显示不正常.也是就没有效果. 我也是sl做的比较多,wpf玩的少,Accordion模板里触发器,状态组调了一早上都没达到满意效果, 无奈只有百 ...

  4. 1.ARC和非ARC文件共存

    1.ARC和非ARC文件共存 项目->Build Parses->对应的类 1.1.新项目兼容老的非ARC:-fno-objc-arc 1.2.老项目兼容ARC:-fobjc-arc

  5. Codeforces 627A XOR Equation(思路)

    题目大概说两个正整数a.b,已知s=a+b以及x=a xor b的值,问有几种a.b这样的数对. 我知道异或相当于无进位的加法,s-x就是其各个位置的进位,比如s-x=1010,那就表示a和b的第1位 ...

  6. echarts.js 做图表的插件

    <scripttype="text/javascript"src="{uiurl()}echarts/echarts.js"></script ...

  7. [R]R的工作流

    最近处理数据时,一直在纠结程序的结构该如何构建,以减少很多简单又很耗时的工作. 刚好把Rob J Hyndman的blog给浏览了一遍,发现一篇2009年的文章,很有启发. 原文: Workflow ...

  8. hdu1019 Least Common Multiple

    Problem Description The least common multiple (LCM) of a set of positive integers is the smallest po ...

  9. sed 格式化输出df -h

    df -h|sed '1d;/ /!N;s/\n//;s/ \+/ /;' 1d——————删除第一行 / /!N——————没有空格的行执行N 例子中没有空格的行 /dev/mapper/vg_ds ...

  10. Win10 利用安装盘启用 .NET Framework 3.5

    以管理员身份运行命令提示符,在“管理员:命令提示符”窗口中输入以下命令:dism.exe /online /enable-feature /featurename:netfx3 /Source:D:\ ...