首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSFileCoordinator正确使用

NSFileCoordinator正确使用
EN

Stack Overflow用户
提问于 2012-08-03 09:29:01
回答 1查看 3.2K关注 0票数 6

当使用NSFileCoordinator编写文件时,我需要指定正确的NSFileCoordinatorWritingOptions。虽然已详细解释,但我不知道何时使用哪一种。可供选择的办法如下:

  • NSFileCoordinatorWritingForDeleting
  • NSFileCoordinatorWritingForReplacing
  • NSFileCoordinatorWritingForMoving
  • NSFileCoordinatorWritingForMerging

例如,如果我想创建一个文件(例如,plist ),那么正确的选项是什么?当我修改文件的时候?

为了更好的理解,有人能解释一下NSFileCoordinatorWritingOptions吗?

EN

回答 1

Stack Overflow用户

发布于 2012-12-11 07:24:55

我同意,这方面的文档还不完整,很难理解。而且,即使对于这样的基本操作,也没有可用的示例代码。

我试图从其他打开特定文件的应用程序的角度来考虑这些选项,这些选项有助于了解整个情况。

  • 不传递任何选项(0),只需更新文件并将更改通知其他人。
  • 假设您正在删除TextEdit当前显示的文件,通过提供NSFileCoordinatorWritingForDeleting选项,您将告诉TextEdit关闭该文件,因为它已经不存在了(或者,如果它在内存中,它可以建议将它保存到另一个位置)。它的作用是因为删除。
  • 如果您正在覆盖一个文件(而不是更新一个文件),您希望其他应用程序也有相同的行为。那是NSFileCoordinatorWritingForReplacing。
  • NSFileCoordinatorWritingForMoving说,其他应用程序可以跟踪文件到它的新位置,以便以后可以更新。
  • NSFileCoordinatorWritingForMerging要求其他进程首先提交它们的更改,以便您可以将自己的更改与这些更改合并。

要回答您的问题,您应该在创建一个新文件时使用NSFileCoordinatorWritingForReplacing (即使不存在文件,因为它同时出现在另一个应用程序中,您将用您自己的、无关的内容替换它)。当使用新数据更新现有文件时,应该使用NSFileCoordinatorWritingForMerging,因为它允许立即集成对该文件的最新更改(而不是稍后使用冲突解决)。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11792987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档