• 【读书笔记】iOS-属性列表


    一,在Cocoa中,有一类名为属性列表的对象,常简写为plist.这些列表包含Cocoa知道如何操作的一组对象。具体来讲,Cocoa如何知道将这们保存在文件中并进行加载。属性列表类包括NSArray,NSDictionary,NSString,NSNumber,NSDate和NSData,以及它们的变体(如果它们存在变体)。

     

    二,集合属性列表类(NSArray,NSDictionary)具有一个-writeToFile:atomically:方法,用于将属性列表写入文件。NSString和NSData也具有-writeToFile:atomically:方法,但字只能写出字符串或数据块。

     

    三,-writeToFile:atomically:中的atomically.

    atomically的值为BOOL类型,用于通知Cocoa是否应该首先将文件内容保存在临时文件中,当文件成功保存后,再将该临时文件和原始文件交换,这是一种安全机制:如果在保存过程中出现意外,不会破坏原始文件。但是这种安全机制需要付出一定的代价:在保存过程中,由于原始文件仍然保存在磁盘中,所以需要使用双倍的磁盘空间。除非保存的文件非常大,将会占用用户磁盘的空间,否则应该自动保存文件。

     

    代码:

    复制代码
    - (void)viewDidLoad {
        [super viewDidLoad];
        // Do any additional setup after loading the view, typically from a nib.
        
        NSArray *phrase=[NSArray arrayWithObjects:@"I",@"seem",@"to",@"be",@"a",@"verb",nil];
        [phrase writeToFile:@"/Users/chenlihua/Desktop/plist.txt" atomically:YES];
        
        NSArray *phrase2=[NSArray arrayWithContentsOfFile:@"/Users/chenlihua/Desktop/plist.rtf"];
        NSLog(@"%@",phrase2);
    }
    复制代码

     

    输出:

    复制代码
    2015-08-09 11:35:12.787 属性列表[849:18853] (
        I,
        seem,
        to,
        be,
        a,
        verb
    )
    复制代码

     

    参考资料:《Objective-C基础教程》

     

     
     
  • 相关阅读:
    JQ trigger函数无法触发a标签的两种解决方法
    Normalize.css
    wow.js中各种特效对应的类名
    利用伪元素:after清除浮动
    单词超出隐藏显示省略号(单行或多行)并设置是否将单词打断
    利用伪元素和css3实现鼠标移入下划线向两边展开效果
    css3 兼容各个浏览器
    html 初始化
    将博客搬至CSDN
    Linux配置问题
  • 原文地址:https://www.cnblogs.com/yang-guang-girl/p/4833502.html
Copyright © 2020-2023  润新知