美文网首页
iOS 数据存储

iOS 数据存储

作者: 张潇潇潇潇潇 | 来源:发表于2016-09-12 12:56 被阅读19次

    苹果的APP呢,和安卓的直接可以文件管理不一样。苹果的每个APP都有一个单独的应用沙盒。想要改写数据呢,就只能在应用沙盒里面读写数据。


    应用程序包里面主要操作的三个文件夹:

    1.Documents:里面只能放运行时生成的数据。

    2.tmp:保存临时数据。

    3.library:里面分为两个文件夹:

    • 3.1:caches:存储一些下载、缓存的数据;
    • 3.2:preferences:存储用户的偏好设置

    数据存储的方式:

    1.plist存储:可以用来存放数组、字典。是iOS特有的。

    • 存:
      写入:writeToFile:沙盒路径

    • 取:
      arrayWithContentsOfFile:沙盒路径 或者是: dictionaryWithContentsOfFile:沙盒路径

    2.偏好设置:用什么key存就用什么key取,不能存自定义对象,会报错。不能存空值。

    • 存:
      NSUserDefaults *userD = [NSUserDefaults standardUserDefaults]; [userD setObject:@"xx"forKey:@"name"]; [userD synchronize];

    • 取:
      NSString *name = [userD objectForKey:@"name"];

    3.归档:用于存放自定义对象

    • 存:
      1.[NSKeyedArchiver archiveRootObject:对象toFile:沙盒路径];
      2.用plist方法搜索目录文件
      3.遵守协议<NSCoding>
      4.协议方法
      - (void)encodeWithCoder:(NSCoder*)aCoder { [aCoder encodeObject:self.name forKey:@"name"]; }

    • 取:
      - (instancetype)initWithCoder:(NSCoder*)aDecoder { if(self= [superinitWithCoder:aDecoder]) {//如果父类遵守了协议协议 [aDecoderdecodeObjectForKey:@"name"]; } returnself; }

    相关文章

      网友评论

          本文标题:iOS 数据存储

          本文链接:https://www.haomeiwen.com/subject/twepettx.html