• IOS中对象的归档


    ios提供了两个类 NSKeyedArichiver NSKeyedUnarchiver对自定义对象进行归档 和解档操作

    归档常见方法

    - (void)encodeObject:(id)objv forKey:(NSString *)key;
    - (void)encodeConditionalObject:(id)objv forKey:(NSString *)key;
    - (void)encodeBool:(BOOL)boolv forKey:(NSString *)key;
    - (void)encodeInt:(int)intv forKey:(NSString *)key;    // native int
    - (void)encodeInt32:(int32_t)intv forKey:(NSString *)key;
    - (void)encodeInt64:(int64_t)intv forKey:(NSString *)key;
    - (void)encodeFloat:(float)realv forKey:(NSString *)key;
    - (void)encodeDouble:(double)realv forKey:(NSString *)key;
    - (void)encodeBytes:(const uint8_t *)bytesp length:(NSUInteger)lenv forKey:(NSString *)key;

    解档常见方法

    - (id)decodeObjectForKey:(NSString *)key;
    - (BOOL)decodeBoolForKey:(NSString *)key;
    - (int)decodeIntForKey:(NSString *)key;     
    - (int32_t)decodeInt32ForKey:(NSString *)key;
    - (int64_t)decodeInt64ForKey:(NSString *)key;
    - (float)decodeFloatForKey:(NSString *)key;
    - (double)decodeDoubleForKey:(NSString *)key;


    上面这些方法使用都很简单 我这里就不做过多赘述

    我这里主要说下 对于我们自定义的对象 如何进行归档解档操作: 步骤如下:

    1.首先自定义的对象必须要遵守NSCoding 协议

    2.必须实现协议的两个方法

    *- (id)initWithCoder:(NSCoder *)aDecoder

    *- (void)encodeWithCoder:(NSCoder *)aCoder

    3.分别在这两个方法里面描述清楚 如何解析 和 存储 数据即可

    两个方法的使用方式如下:

    4.经过以上步骤之后 ,你就可以放心大胆的到任何位置去存储 和读取 自定义的对象的数据了

    好了,关于自定义对象归档 我就理解这么多了 希望大家多多支持哈

  • 相关阅读:
    Xamarin.Forms的ActivityIndicator和ProgressBar比较
    SSL剥离工具sslstrip
    服务器SSL/TLS快速检测工具TLLSSLed
    网站robots.txt探测工具Parsero
    采集网站特殊文件Meta信息
    海量端口扫描工具masscan
    Uip + Stm32移植问题总结【转】
    Micro Python 嵌入式以太网社区
    TEA加密算法的C/C++实现
    STM32F4系列外设驱动【不再更新】
  • 原文地址:https://www.cnblogs.com/syios/p/4763382.html
Copyright © 2020-2023  润新知