归档:是把数据持久化到本地,归档是其中的一样,数据库是一种持久化的归档,但是归档有一个特点,持久化到本地的数据是经过加密.不能够用特定的软件读看里面的内容.与文件操作最大的区别.
归档也叫做序列化,解档叫反序列化.
下面实例是把数组归档和解档:
//
// main.m
// storeDemo1
//
// Created by 5016 on 13-12-18.
// Copyright (c) 2013年 dradon. All rights reserved.
//
#import <Foundation/Foundation.h>
//归档-----序列化
//数组归档
void store()
{
//1.获取路径
NSString *homePath = NSHomeDirectory();
NSString *targetPath = [homePath stringByAppendingPathComponent:@"Desktop/arr.archive"];
//2.准备数据
NSArray *arr = @[@002,@555,@"dragon",@"yeah"];
//3.归档
BOOL success = [NSKeyedArchiver archiveRootObject:arr toFile:targetPath];
if (success) {
NSLog(@"归档成功");
}
else
{
NSLog(@"归档失败");
}
}
//解档-----反序列化
//数组解档
void readstroe()
{
//1.获取路径
NSString *homePath = NSHomeDirectory();
NSString *targetPath = [homePath stringByAppendingPathComponent:@"Desktop/arr.archive"];
//2.解档成为数组
NSArray *unarr = [NSKeyedUnarchiver unarchiveObjectWithFile:targetPath];
NSLog(@"new arr=%@",unarr);
}
int main(int argc, const char * argv[])
{
@autoreleasepool {
store();
readstroe();
}
return 0;
}