归档&解档、静态单例(swift)

1.在class OAuthViewController:UIViewController

// 3.从字典中取出昵称和用户头像地址(account :UserAccount)

account.screen_name = userInfoDict["screen_name"]as?String

account.avatar_large = userInfoDict["avatar_large"]as?String

// 4.将account对象保存

NSKeyedArchiver.archiveRootObject(account, toFile: UserAccountViewModel.shareIntance.accountPath)

2.在class UserAccount:NSObject,NSCoding 

// MARK:-归档&解档

///解档的方法

requiredinit?(coder aDecoder:NSCoder) {

         access_token= aDecoder.decodeObjectForKey("access_token")as?String

         uid= aDecoder.decodeObjectForKey("uid")as?String

         expires_date= aDecoder.decodeObjectForKey("expires_date")as?NSDate

         avatar_large= aDecoder.decodeObjectForKey("avatar_large")as?String

         screen_name= aDecoder.decodeObjectForKey("screen_name")as?String

}

///归档方法

funcencodeWithCoder(aCoder:NSCoder) {

        aCoder.encodeObject(access_token, forKey:"access_token")

       aCoder.encodeObject(uid, forKey:"uid")

       aCoder.encodeObject(expires_date, forKey:"expires_date")

       aCoder.encodeObject(avatar_large, forKey:"avatar_large")

       aCoder.encodeObject(screen_name, forKey:"screen_name")

}

3.在其它类中提取沙河里的值

// 1.从沙盒中读取中归档的信息

var accountPath =NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask,true).first!

accountPath = (accountPath as NSString).stringByAppendingPathComponent("account.plist")

account=NSKeyedUnarchiver.unarchiveObjectWithFile(accountPath) as? UserAccount

//取出值,如下

account.screen_name

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • AFN添加网络指示器 设置缓存大小 NSURLCache只缓存get datatask 发送用户名密码后 返回用...
    DavidFeng_swift阅读 355评论 0 0
  • 首先对于归档的定义就不再赘述 最近在做一个项目,里面有一个功能是把购物车里的产品缓存到本地,由于数据量较少,选择归...
    小豆豆苗阅读 2,899评论 3 3
  • /*iOS归档小结:1.归档实际上就是一种文件保存的形式,几乎所有的对象都能够被归档存储。它使用NSKeyedAr...
    彬至睢阳阅读 934评论 0 0
  • 1、对象归档的对象属性只能是简单的属性,对象的属性最好不要是自定义对象.较复杂的对象不适合归档。 2、对象如果父类...
    然亦伞阅读 474评论 1 0
  • 一、归档的基本概念 之前将数据保存本地,只能是字符串、数组、字典、NSNuber、BOOL等容器类对象对象,不能将...
    空白Null阅读 5,240评论 1 10