关于以原子方式保存plist的可可目标问题

时间:2011-01-07 22:18:35

标签: objective-c cocoa plist

以原子方式保存plist时 -

[thisAgentData writeToFile:plistpath atomically:YES];

是否意味着如果文件存在,它将覆盖所有现有数据?

1 个答案:

答案 0 :(得分:6)

原子意味着您的数据会保存到临时文件中,如果在写入过程中没有错误,则会将其重命名为实际路径。因此,如果写入操作失败(例如,如果磁盘已满),则不会在目标路径中找到不完整的文件。另一个优点是,在编写文件时尝试读取文件的线程不会面对不完整的文件,只要写入尚未完成就会获得旧文件。

但是,如果操作成功,此方法将覆盖您的目标文件。