美文网首页
IOS应用开发,plist方式保存数据以及Preferences

IOS应用开发,plist方式保存数据以及Preferences

作者: nightfallLemon | 来源:发表于2017-01-13 09:48 被阅读0次

    plist方式保存数据
    plist可以保存的类型为数组与字典.
    在介绍plist文件保存之前,先介绍几个方法。

    NSHomeDirectory(); 该方法用来获取我们ios文件在应用沙盒中的文件位置.
    NSTemporaryDirectory(); 该方法用来获取我们ios文件在应用沙盒中的tmp文件夹
    位置.
    NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory directory, NSSearchPathDomainMask domainMask, BOOL expandTilde); 该方法用来查找caches文件夹,因为没有直接的方法直接获取到caches文件夹
    

    注意事项:

    如果数组或字典中 存在NSNull 对象, 保存操作将会失败.

    保存

    //定义一个数组对象.
    NSArray *arr = @[@"123", @1];
    /***NSUserDomainMask 代表在用户的手机目录上查找*NSCachesDirectory 查找library/caches路径*返回值是一个数组.*/
    NSString *cachePath =NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask, YES)[0];
    //拼接自己路径,将要保存的数据存入arr.plist文件夹中.
    NSString *filePath = [cachePath stringByAppendingPathComponent:@"arr.plist"];
    //写入plist文件.
    [arr writeToFile:filePath atomically:YES];
    

    读取

    //获取caches文件夹. 
    NSString *cachePath =NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
     //获取arr.plist文件路径 
    NSString *filePath = [cachePath stringByAppendingPathComponent:@"arr.plist"]; 
    //读取文件 
    NSArray *arr = [NSArray arrayWithContentsOfFile:filePath];
    

    Preferences方式保存数据
    相比plist方式保存数据来说,Preferences方式的优势在于:1.不需要关心文件名.
    2.快速的键值对存取.

    Preferences 与 application 一样,是一个单例.

    保存

    //获取对象 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    //保存对象 
    [defaults setObject:@"xmg" forKey:@"account"]; 
    [defaults setObject:@"123" forKey:@"pwd"]; 
    [defaults setBool:YES forKey:@"rmbPwd"];
    

    读取

    //获取对象 
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
    //通过键值对获取数据. 
    NSString *account = [defaults objectForKey:@"account"];
    

    相关文章

      网友评论

          本文标题:IOS应用开发,plist方式保存数据以及Preferences

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