当前位置: 首页 > news >正文

廊坊网站制作费用工业设计服务

廊坊网站制作费用,工业设计服务,输入关键词进行搜索,wordpress菜单下拉一、概念1.归档用于保存对象#xff0c;包括被归档对象之间的各种相互关系或者依赖性。解档用于重建以前归档的对象与关系。在其它面向对象的语言中#xff0c;一般使用术语序列化来描述归档解档模式。2.归档的对象通常存储为二进制数据#xff0c;可以在内存或…一、概念1.归档用于保存对象包括被归档对象之间的各种相互关系或者依赖性。解档用于重建以前归档的对象与关系。在其它面向对象的语言中一般使用术语序列化来描述归档解档模式。2.归档的对象通常存储为二进制数据可以在内存或者磁盘中读取写入。不过在Cocoa中也有一些对象使用XML文件进行归档和解档比如NSArrayNSDictionary等等这是Cocoa中关于归档解档模式的另一个体现。3.实现归档和解档模式的关键是相关对象的处理。不管对象之间的关系有多复杂归档中的每个对象在那个归档中只会编码一次也就是说如果许多归档的对象都引用相同的对象则这个对象只会编码一次这就最小化了归档所需的存储空间。4.有条件的编码在许多对象彼此相关但是并非所有关系都需要保留下来的情况下可以有条件的选择只对某些对象进行归档。二、Cocoa中的实现1.NSCoding协议(1)当一个对象要实现归档解档操作需要归档的对象必须要实现NSCoding协议。(2)NSCoding协议包含两个方法encodeWithCoder:initWithCoder:。(3)encodeWithCoder实现对象编码initWithCoder实现对象解码。两个方法的参数是NSCoder类实例是对象编码解码器可以将实例对象的属性直接编码或者以key-value的方式编码解码也一样。    类似的方法如下(每种数据类型都有相关的方法支持)    encodeObject:    encodeObject:forKey:    encodeInt:forKey:    decodeObject    decodeObjectForKey:    decodeIntForKey:(4)编码和解码是对象迭代的一个过程可能encodeObject:ObjectA方法又会引起ObjectA的encodeWithCoder被调用。(5)NSCoding实现示例- (void)encodeWithCoder:(NSCoder*)coder{        [coder encodeObject:self.userName forKey:SAMPLEDATA_KEY_USERNAME];      [coder encodeInt:self.age forKey:SAMPLEDATA_KEY_AGE];      [coder encodeBool:self.gender forKey:SAMPLEDATA_KEY_GENDER];      [coder encodeObject:self.friends forKey:k_FRIENDS];      [coder encodeObject:self.address forKey:k_ADDRESS];      [coder encodeObject:self.addresses forKey:k_userEntity_addresses];  }     - (id)initWithCoder:(NSCoder*)decoder{        if (self [super init])  {          if (decoder nil)  {             return self;        }          self.userName [decoder decodeObjectForKey:SAMPLEDATA_KEY_USERNAME];          self.gender [decoder decodeBoolForKey:SAMPLEDATA_KEY_GENDER];          self.age [decoder decodeIntForKey:SAMPLEDATA_KEY_AGE];          self.friends [decoder decodeObjectForKey:k_FRIENDS];          self.address [decoder decodeObjectForKey:k_ADDRESS];          self.addresses [decoder decodeObjectForKey: k_userEntity_addresses];      }      return self;  } 2.归档和解档工具类NSKeyedArchiver用于归档相关对象生成NSDataNSKeyedUnarchiver用于解档对象从NSData解码出对象。3.NSKeyedArchiver和NSKeyedUnarchiver相关API(1)NSData *data [NSKeyedArchiver archivedDataWithRootObject:objectA];    NSObject *object [NSKeyedUnarchiver unarchiveObjectWithData:someData];(2)Bool isSucc [NSKeyedArchiver archiveRootObject:rootObject toFile:filePath];    NSObject *object [NSKeyedUnarchiver unarchiveObjectWithFile:filePath];(3)以上两套API方便的实现单个对象的归档和解档如果要将多个对象归档在一起可以用以下API:        归档    NSMutableData *data [[NSMutableData alloc] init];    NSKeyedArchiver *archiver [[NSKeyedArchiver alloc] initForWritingWithMutableData:data];    [archiver encodeObject:objectA forKey:keyA];    [archiver encodeObject:objectB forKey:keyB];    [archiver encodeInt:3 forKey:keyC];    [archiver finishEncoding];    [data writeToFile:filePath atomically:YES];    [archiver release];    [data release];    解档    – initForReadingWithData:    – decodeObjectForKey:     finishDecoding(4)NSKeyedArchiver有一个属性outputFormat类型为NSPropertyListFormat指定编码器的编码格式。有两个可用的值NSPropertyListXMLFormat_v1_0 和 NSPropertyListBinaryFormat_v1_0。采用二进制的格式比采用文本的格式占用的空间小读写速度高。
http://www.sadfv.cn/news/247596/

相关文章:

  • 有域名了网站怎么做wordpress插件盗版
  • 建设网站建站公司开发公司移交物业必备资料
  • 江苏建设培训网站安卓盒子 做网站
  • 沈阳市建设监理协会网站网站建设seo规范
  • 免费设计图网站微信公众号怎么创建要多少钱
  • 跨境电商建站公司在线网站建设活动
  • 做娱乐网站做非遗网站的原因
  • 建站网站建设公司果动
  • 西安网站建设畅网企业vi是什么意思
  • 开发做游戏的网站2008 iis7添加网站
  • 上海小企业网站建设平台永久免费vps服务器
  • 山东省建设建设协会网站聊城定制化网站建设
  • 帝国做视频网站c#网站开发+pdf
  • 怎么做单页竞价网站英文seo公司
  • 自己如何建设微信网站做动态图网站有哪些
  • 昌平网站开发公司企业网站排行
  • 购物网站有哪些app界面设计模板一套
  • 网站正在建设中永久商城网站建设套餐报价
  • 诚信网站认证必需做吗中山市做网站专业的
  • 中国空间站建造完成wordpress评论图片
  • tint-k主题做企业网站温州做高端网站公司排名
  • 叫人开发网站注意事项辽宁app开发公司
  • 织梦网站被植入广告wordpress修改注册页面
  • 番禺建设网站开发网站开发的一般流程
  • 深圳医院网站建设网站开发后端怎么开发
  • 中小型网站建设多少钱小公司要不要建设网站
  • 什么不属于网站推广软件网站怎么提升流量
  • 网站开发工程开发一个小程序的流程
  • 二手网站建设论文百度站长工具对seo的帮助
  • 动漫网站建设欧洲paypal网站