自定義類寫入檔案

2021-07-03 05:07:06 字數 1455 閱讀 9889

//對自定義類歸檔

person.h  遵守協議

#import

@class book;

@inte***ce person : nsobject

@property(copy,nonatomic)nsstring *name;

@property(copy,nonatomic)nsstring ****;

@property(strong,nonatomic)book *book;

@end

person.m

#import "person.h"

@implementation person

-(void)encodewithcoder:(nscoder *)acoder

-(id)initwithcoder:(nscoder *)adecoder

return self;

}@end

----------------------寫入檔案-----------------

建立物件

book *book1 = [[book alloc] init];

book1.name = @"西遊記";

//寫入自定義類

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

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

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

p1.name = @"wyj1";

p1.*** = @"男1";

p1.book = book1;

用archive歸檔

nsmutabledata *data = [nsmutabledata data];

nskeyedarchiver *archiver = [[nskeyedarchiver alloc] initforwritingwithmutabledata:data];

[archiver encodeobject:p1 forkey:@"person"];

[archiver finishencoding];

獲取檔案路徑

--------------自定義類物件從檔案讀取--------------

1.先獲取路徑

nsdata *data = [nsdata datawithcontentsoffile:doucment];

2.將nsdata通過反歸檔,轉化為personz物件

nskeyedunarchiver *unarchiver = [[nskeyedunarchiver alloc] initforreadingwithdata:data];

3.通過反歸檔得到複雜物件

person *p = [unarchiver decodeobjectforkey:@"person"];

[unarchiver finishdecoding];

NLog 自定義字段 寫入 oracle

2 建表語句 create table tbl log id varchar2 60 not null varchar2 20 modulename varchar2 30 procname varchar2 30 operationtype varchar2 20 logger varchar2 ...

自定義異常類

自定義並捕獲 一 第一種定義方式,繼承exception類 public class myfirstexception extends exception public myfirstexception string msg public myfirstexception string msg,th...

自定義異常類

除了程式裡已經定義好的標準異常類以外,還可以自定義自己的異常類,但通常也和其他標準異常類一樣派生於exception類例如對於乙個 類,如果規定當且僅當任意兩邊長度之和大於第三邊,才能試圖建立乙個三角形或者改變乙個邊長時也不要改變此性質。如果改變了丟擲乙個異常 同時每條邊不能是負數,否則也丟擲異常。...