【问题标题】:cocoa properly copy file可可正确复制文件
【发布时间】:2015-09-19 03:08:06
【问题描述】:

我想实现一个简单的文件保存,目前我正在使用 NSDatawriteToUrl :options :error 方法,它可以完成工作,但我想知道这样做的正确方法是什么?

我的意思是如果同名文件已经存在,我需要询问用户额外的输入,复制失败等等。

可可框架中是否有内置的东西可以解决这个问题? 我看了一下NSFileManager,但那里看不到类似的东西?

如果这个问题很无聊,我很抱歉,但我从来没有接触过文件系统,除了用户默认值,也找不到想要的方法。

【问题讨论】:

    标签: objective-c cocoa error-handling copy nsfilemanager


    【解决方案1】:

    如果您使用 NSSavePanel 向用户询问保存文件的路径,当路径已经存在时,它将负责显示工作表。

    然后您可以使用 NSAlert 显示保存过程中可能发生的任何错误。

    【讨论】:

    • 感谢您的信息,但是在我的特殊情况下,我需要从用户那里选择一个 DIRECTORY 路径,然后将大约 4-5 个文件扔在那里......所以很遗憾它对我没有帮助跨度>
    【解决方案2】:

    是的,您必须编写自己的错误处理代码。检查文件是否已经存在,告诉用户,提示输入新名称。所有这些都是开发人员代码。

    【讨论】:

    • 悲哀,我总以为苹果包了它,那我能问一个小问题吗?我也找不到要求“覆盖,保留两者,取消”的sheet 有这样的表吗?或者我也应该自己做?感谢您的回答!
    • 是的,您也需要这样做。考虑众多开发人员及其众多 UI 可能希望它工作和看起来的所有各种方式。确实没有一个通用的解决方案可以覆盖大部分的使用。
    • 谢谢,我只是认为它确实像NSopenPanel 这样很常见,但如果不是,那么不是......需要几个小时才能让它工作......感谢您的快速回答和保存我有很多搜索时间(因为我可能会继续寻找类似的东西几天你最知道的懒惰:))。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 2019-03-11
    • 2010-10-14
    • 1970-01-01
    • 2019-06-18
    • 2019-11-26
    相关资源
    最近更新 更多