归档-ios

/****归档**/

NSString *homePath=NSHomeDirectory();

NSString *[email protected]"test.vse";

NSString *path=[homePath stringByAppendingPathComponent:fileName];

NSArray *[email protected][@"abc",@"sea",@123];

BOOL success=[NSKeyedArchiver archiveRootObject:array toFile:path];

if (success) {

NSLog(@"success");

}

/**解存档***/

NSArray *newArray=[NSKeyedUnarchiver unarchiveObjectWithFile:path];

NSLog(@"%@",newArray);

/***第二种存档方式***/

NSString *homePath2=NSHomeDirectory();

NSString *[email protected]"test2.vse";

NSString *path2=[homePath2 stringByAppendingPathComponent:fileName2];

NSMutableData *data=[NSMutableData data];

NSKeyedArchiver *archiver=[[NSKeyedArchiver alloc] initForWritingWithMutableData:data];

NSArray *[email protected][@"abc222",@"se22a",@1233];

[archiver encodeInt:100 forKey:@"age"];

[archiver encodeObject:array2 forKey:@"name"];

[archiver finishEncoding];

BOOL success2=[data writeToFile:path2  atomically:YES];

if (success2) {

NSLog(@"success");

}

/***解第二种存档方式***/

NSData *data2=[NSData dataWithContentsOfFile:path2];

NSKeyedUnarchiver *unAchiver=[[NSKeyedUnarchiver alloc] initForReadingWithData:data2];

int age=[unAchiver decodeIntForKey:@"age"];

NSArray *name=[unAchiver decodeObjectForKey:@"name"];

NSLog(@"age=%d,name=%@",age,name);

归档-ios

时间: 2024-08-15 00:29:42

归档-ios的相关文章

iOS开发——数据持久化OC篇&(三)对象归档

归档 iOS开发UI篇—ios应用数据存储方式(归档)  一.简单说明 在使用plist进行数据存储和读取,只适用于系统自带的一些常用类型才能用,且必须先获取路径相对麻烦: 偏好设置(将所有的东西都保存在同一个文件夹下面,且主要用于存储应用的设置信息) 归档:因为前两者都有一个致命的缺陷,只能存储常用的类型.归档可以实现把自定义的对象存放在文件中. 二.代码示例 1.文件结构 2.代码示例 YYViewController.m文件 1 // 2 // YYViewController.m 3 /

iOS开发数据库-FMDB

前言 FMDB是以OC的方式封装了SQLite的C语言API,使用起来更加面向对象,省去了很多麻烦.冗余的C语言代码:对比苹果自带的Core Data框架,更加轻量级和灵活:提供了多线程安全的数据库操作方法,有效地防止数据混乱:FMDB同时兼容ARC和非ARC工程,在编译的时候会自动根据工程配置来调整相关的内存管理代码. 使用方法 FMDB有三个主要的类 FMDatabase 表示一个单独的SQLite数据库. 用来执行SQLite的命令. FMResultSet 表示FMDatabase执行查

iOS数据存储之属性列表理解

iOS数据存储之属性列表理解 数据存储简介 数据存储,即数据持久化,是指以何种方式保存应用程序的数据. 我的理解是,开发了一款应用之后,应用在内存中运行时会产生很多数据,这些数据在程序运行时和程序一起驻留在内存中,一旦程序运行结束从内存中退出后,这些数据也就相应消失了.等到再次运行程序的时候,之前的那些数据又要重新计算.但是对于一些应用,我们需要将程序产生的数据持久的保存起来,使得应用重启之后这些数据不会丢失,这时候就需要用到数据的持久化技术. 在iOS设备上实现数据持久化存储的方式有很多中机制

iOS数据持久化-OC

沙盒详解 1.IOS沙盒机制 IOS应用程序只能在为该改程序创建的文件系统中读取文件,不可以去其它地方访问,此区域被成为沙盒,所以所有的非代码文件都要保存在此,例如图像,图标,声音,映像,属性列表,文本文件等. 1.1.每个应用程序都有自己的存储空间 1.2.应用程序不能翻过自己的围墙去访问别的存储空间的内容 1.3.应用程序请求的数据都要通过权限检测,假如不符合条件的话,不会被放行. 通过这张图只能从表层上理解sandbox是一种安全体系,应用程序的所有操作都要通过这个体系来执行,其中核心内容

文顶顶博客整理

感谢 文顶顶感谢 ashamp foundation框架 结构体 Foundation框架 字符串 Foundation框架 集合 iOS开发UI篇 Button基础 iOS开发UI篇 手写控件,frame,center和bounds属性 iOS开发UI篇 transframe属性(形变) iOS开发UI篇 简单的浏览器查看程序 iOS开发UI篇 懒加载 ios开发UI篇 安装苹果官方文档和Xcode模拟器 OC语言BLOCK和协议 iOS开发UI篇 九宫格坐标计算 iOS开发UI篇 字典转模型

IOS学习之NSKeyedArchiver、NSKeyedUnarchiver归档

IOS保存文件的其中一种形式是NSKeyedArchiver.NSKeyedUnarchiver归档: 以下内容以一个to-do lists软件为例,ChecklistItem为一个项目(数据模型),包含一个字符串text和一个BOOL标记checked,items是视图控制器的NSMutableArray,包含多个ChecklistItem,保存数据时以items为整体保存到.plist文件,读取则一样. 1.首先在数据模型的.h文件中实现协议<NSCoding>,例如: @interfac

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

1.iOS应用数据存储的常用方式XML属性列表(plist)归档Preference(偏好设置)NSKeyedArchiver归档(NSCoding)SQLite3 Core Data 2.应用沙盒每个iOS应用都有自己的应用沙盒(应用沙盒就是文件系统目录),与其他文件系统隔离.应用必须待在自己的沙盒里,其他应用不能访问该沙盒应用沙盒的文件系统目录,如下图所示(假设应用的名称叫Layer)模拟器应用沙盒的根路径在: (apple是用户名, 8.0是模拟器版本)/Users/apple/Libra

关于iOS的归档

归档,在其他语言中又叫“序列化”,就是将对象保存到硬盘:解档,在其他语言又叫“反序列化”就是将硬盘文件还原成对象.其实归档就是数据存储的过程,在IOS中数据的存储有五种方式: xml属性列表(plist归档) NSUserDefaults(偏好设置) NSKeyedArchiver归档(加密形式) SQLite3(嵌入式数据库) Core Data(面向对象方式的嵌入式数据库) 一.首先我们先来看一下xml属性列表,xml属性列表进行归档的方式是将对象存储在一个plist文件中,这个操作起来比较

IOS文件操作和自定义对象的归档(序列化)、反归档(反序列化)

IOS对文件操作包含文件的创建,读写,移动,删除等操作. 1.文件的创建: //设定文本框存储文件的位置 NSString *strFilePath=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0]; //指定存储文件的文件名 NSString *fileName=[strFilePath stringByAppendingPathComponent:@