相关疑难解决方法(0)

复制时如何用NSFileManager覆盖文件?

我正在使用此方法复制文件:

[fileManager copyItemAtPath:sourcePath toPath:targetPath error:&error];
Run Code Online (Sandbox Code Playgroud)

我想在文件存在时覆盖它.此方法的默认行为是抛出异常/错误"文件存在".当文件存在时.没有选项可以指定它应该覆盖.

那么最安全的方法是什么?

我会首先检查文件是否存在,然后将其删除,然后尝试复制?这有一个危险,即应用程序或设备在删除文件后的纳秒内关闭,但新文件尚未复制到该位置.那没什么.

也许我必须首先更改新文件的名称,然后删除旧的,然后重新更改新的名称?同样的问题.如果在这纳秒内应用程序或设备关闭并且重命名不会发生怎么办?

filesystems iphone nsfilemanager ipad ios

47
推荐指数
5
解决办法
4万
查看次数

标签 统计

filesystems ×1

ios ×1

ipad ×1

iphone ×1

nsfilemanager ×1