您的位置:首页 > 其它

归档、解归档(序列化、反序列化)

2015-11-05 20:33 381 查看
我抱着一个Learner的态度。

赘言-第一天写博客有些无头无脑,但是跨出第一步了。

归档(序列化、反序列化):将大数据存入本地的前一步操作。要将大数据存入本地,首先将大数据转为NSData(二进制数据)。

终端的一点基本操作     ls  (磁盘下的内容)  pwd(根目录)

先来个简单的例子,流程如下:

0.可以使用终端获取一个路径  

#define kFilePath @"/Users/lichunlei/Desktop/MyFile.plist"
1.创建字典或者数组。

2.创建一个可变的数据类型(NSData)。

3.初始化一个归档器(NSKeyedArchiver)(将会把数据类型传入)。

4.使用归档器将字典或者数组联系。(使用归档器的对象方法)。

5.结束归档。

6.将NSData对象写入指定路径的文件。

具体代码如下:

#import "ViewController.h"

#define kFilePath @"/Users/lichuilei/Desktop/MyFile.plist"

@interface
ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {

    [superviewDidLoad];

    //plist 
手动创建完成  终端 ls  pwd  
前往

//    //字典的创建前面是值,后面是键
   NSDictionary *dictionary = [NSDictionarydictionaryWithObjectsAndKeys:@"张三",@"z",@"李四",@"l",nil];

    NSArray *array =@[@"张飞",@"赵云",@"马超",@"黄宏"];

    //1创建一个可变的数据

    NSMutableData *data = [[NSMutableDataalloc]init];

    //2初始化归档器  传入data(可以说把解析的数据全部放到data中去)。

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

    //3归档器进行联系 归档 通过key存值

    //给字典、数组 归档(直译:使用归档器归档编码字典对象,使用key)
    [archiver encodeObject:dictionary forKey:@"Dic"];
    [archiver encodeObject:array forKey:@"Arr"];

    //4完成归档 会停止
    [archiverfinishEncoding];

    //5.将data写入指定的文件

    [data writeToFile:kFilePathatomically:YES];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: