OC 数据持久化

作者: ProgressChen | 来源:发表于2016-08-29 15:09 被阅读76次

NSCoder

使用NSCoder时Model要遵循NSCoding协议,同时也要实现encodeWithCoderinitWithCoder方法。

NSCoder会将Model中的数据转换为键值对形式的数据并写入指定的文档。通过encodeWithCoder进行归档。initWithCoder进行解档。

按照规定,编码某个属性时要使用的键就是该属性的名称。

XIB文件也是居于固化机制的。

应用沙盒

就是文件系统的目录

应用沙盒所包含的目录:

  • 应用程序包(application bundle)

可执行的文件和所有资源文件。

此目录中的文件都是只读的,不能修改。此外也不能在运行时向application bundle中添加文件。application bundle中的文件通常包括:pathForResourec:ofType:方法。

  • Documents/

运行时生成的并且需要保留的数据。iTunes或iCloud会在备份该文件。

  • Library/Caches/

与Documents目录相同,不同的是他不会被iTunes或iCloud备份该文件。

  • Library/Preferences/

存放所有的偏好设置,可理解为相当配置文件,iOS中的设置(setting)应用也会在该目录中查找应用的设置信息。

-tmp/

存放设备运行时的临时数据。

获取文件目录

//第一个参数时NSSearchPathDirectory类型常量,负责指定目录的类型
NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 

NSSearchPathForDirectoriesInDomains返值是一个数组,是因为在Mac OS中可能会有多个值,但是在iOS中只会有一个值。

获取应用程序包目录(Application Bundle)

//获取应用程序包的目录
NSBundle *bd = [NSBundle mainBundle]; 
//在应用程序包中查找test.jpeg文件的全路径
NSString *path = [bd pathForResource:@"test" ofType:@"jpeg"];

应用状态与状态转换

应用状态转换图 应用状态

NSData

//向指定的路径中写入数据
- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;

相关文章

  • OC 数据持久化

    NSCoder 使用NSCoder时Model要遵循NSCoding协议,同时也要实现encodeWithCode...

  • coreData使用(解决报错问题)

    OC有多种数据持久化得方式 Write写入方式(nsstring,data,nsdictionary,nsarra...

  • 什么是归档? 反归档?

    把 OC 中基本数据存储到沙盒中,被称为基本数据持久化。 基本数据,在 oc中有以下四种,分别为 NSString...

  • Docker学习(13) 卷与持久化数据

    Docker学习(13) 卷与持久化数据 卷与持久化数据——简介 数据主要分为两种:持久化和非持久化。 持久化:就...

  • iOS本地数据持久化

    iOS本地数据持久化 iOS本地数据持久化

  • Redis-2 数据持久化及持久化配置

    一、数据持久化 开启持久化功能后,重启redis,数据会自动通过持久化文件恢复!! 1、redis持久化 – 两种...

  • 面试相关

    数据持久化 什么是持久化狭义的理解: “持久化”仅仅指把域对象永久保存到数据库中;广义的理解,“持久化”包括和数据...

  • GeekBand iOS开发高级进阶学习笔记(第四周)

    简易数据存储 数据持久化分为本体持久化和云端持久化本体持久化可以存在本地文件或数据库。云端可以存在iCloud,存...

  • iOS数据持久化

    Title: iOS数据持久化 ##数据持久化概念 数据持久化就是将内存中的数据模型转换为存储模型,以及将存储模型...

  • iOS 数据共享 - CoreData

    1. OC 使用 CoreData 进行数据的持久化 1、CoreData 是一个Cocoa框架,用于存储和管理应...

网友评论

    本文标题:OC 数据持久化

    本文链接:https://www.haomeiwen.com/subject/ccxmsttx.html