ios开发中归档的使用
来源:互联网 发布:看啪啪视频软件 编辑:程序博客网 时间:2024/05/17 03:10
1、面向对象的程序在运行的时候会创建一个复杂的对象图,经常要以二进制的方法序列化这个对象图,这个过程叫做Archiving.二进制流可以通过网络或写入文件中
例:NSKeyedArchiver
========================================================*/
NSString *str = @”abc”;
NSString *astr = @”efg”;
NSArray *Array = [NSArray arrayWithObjects:str, astr, nil];
//保存数据
NSString *Path =[NSSearchPathForDirectori
NSString *filename = [PathstringByAppendingPathCom
[NSKeyedArchiverarchiveRootObject:Array
str = @”a”;
astr = @”";
//加载数据
NSArray *arr =[NSKeyedUnarchiver
str = [arr objectAtIndex:0];
astr =
NSLog(@”str:%@”,str);
NSLog(@”astr:%@”,astr);
2、在nsstring 的类的定义中已经添加了协议 即他是实现了nscoding 代理的方法的。
@interface NSString : NSObject
NScoding 是一个协议,主要有下面两个方法
-(id)initWithCoder:(NSCoder*)coder;//从coder中读取数据,保存到相应的变量中,即反序列化数据
-(void)encodeWithCoder:(NSCoder *)coder;//读取实例变量,并把这些数据写到coder中去。序列化数据
NSCoder 是一个抽象类,抽象类不能被实例话,只能提供一些想让子类继承的方法。
NSKeyedUnarchiver
NSKeyedArchiver
一般是在自己定义的类中需要在.h 文件中加入
在.m 文件众实现他的的两个代理方法,这个代理方法将会被自动调用
例如对一个数据类的封装如下:
@interface Restaurant : NSObject {
}
@property (nonatomic, copy) NSString *shopID;
@property (nonatomic, copy) NSString *title;
@property (nonatomic, copy) NSString *discount;
@property (nonatomic, copy) NSString *address;
@end
@implementation Restaurant
@synthesize shopID,title,discount,address;
-(void)dealloc
{
}
- (id)initWithCoder:(NSCoder *)coder
{
}
-(void)encodeWithCoder:(NSCoder *)coder
{
}
@end
下一步就是保存和加载数据了:
注:history对象是一个NSMutableArray数组,用来装Restaurant对象。
-(void)saveArchiver
{
}
-(void)loadArchiver
{
}
- ios开发中归档的使用
- ios开发中归档的使用
- ios开发中归档的使用
- ios开发中归档的使用
- iOS 开发中归档的使用
- ios开发中归档的使用
- ios开发中归档的使用
- ios开发中归档的使用
- ios开发中归档的使用
- ios开发中归档的一些心得
- ios中使用归档
- iOS 归档的使用
- iOS开发过程中一些数据的存储归档
- iOS开发中模拟器归档成功,但是真机归档失败的问题
- iOS开发中模拟器归档成功,但是真机归档失败的问题
- 【iOS开发-存储】使用NSCoding归档和反归档
- ios-day12-04(ios开发中数据存储之NSKeyedArchiver归档(NSCoding)、普通对象如何归档、普通对象的子类如何归档)
- iOS开发之归档
- App Store审核指南中文版(20…
- HealthKit框架参考
- (转)iOS中的唯一标示符
- java通过反射遍历class内所有参数和方法
- Lable加载 类似QQ表情 …
- ios开发中归档的使用
- nginx location 匹配规则
- iOS7静默推送
- [React-native]视频播放react-nati…
- react-native-art-绘图入门
- react-native 常用组件
- Spark的几个基本概念:Driver和Job,Stage
- 一些很棒的游戏推荐
- Toast使用详解