歸檔和解檔

2022-02-10 09:08:31 字數 814 閱讀 3467

歸檔--encoder    它是將自定義的物件寫入磁碟前將物件轉成二進位制然後存入磁碟。

解檔--decoder    它是將磁碟上儲存的二進位制資料轉換成自定義物件。

eg:自定義乙個person物件

.h 檔案中

@property (nonatomic,copy)nsstring *name;

@property (nonatomic,assign)int age;

.m 檔案中

// 歸檔

- (void)encodewithcode:(nscode *)encode

[encode encodeobject:_name forkey:@"username"];

[encode encodeint:_age forkey:@"userage"];

// 解檔

-(instancetype)initwithcoder:(nscoder *)decoder

if(self = [super init])

_name = [decoder decodeobjectforkey:@"username"];

_age = [decoder decodeintforkey:@"userage"];

return self;

在控制器中呼叫  

例項化乙個person物件

person *p = [[person alloc]init];

p.name = @"jerry";

p.age = 20;

// 解檔

// 解檔

nslog(@"%@",p1.name);

歸檔和解檔

針對於歸檔和解檔,在日常工作當中用的不多,但是它的原理很重要,所以有必要我們重點學習一下 歸檔是 寫入磁碟前將自定義物件轉換成二級制資料,解檔是 將磁碟上的二級制資料轉換成自定義物件 1.建立乙個person物件,寫屬性,遵守協議 在person.h檔案中 import inte ce person...

歸檔和解檔 Archiver

一 概念 1.歸檔用於儲存物件,包括被歸檔物件之間的各種相互關係或者依賴性。解檔用於重建以前歸檔的物件與關係。在其它物件導向的語言中,一般使用術語 序列化 來描述歸檔解檔模式。2.歸檔的物件通常儲存為二進位制資料,可以在記憶體或者磁碟中讀取,寫入。不過在cocoa中,也有一些物件使用xml檔案進行歸...

OC 歸檔和解檔 總結

自定義物件實現協議 m 檔案內實現2個方法 例子 void encodewithcoder nscoder acoder id initwithcoder nscoder adecoder return self 歸檔自定義的型別 person tom person alloc initwithna...