将内容从一个文件夹复制到另一个文件夹

Posted

技术标签:

【中文标题】将内容从一个文件夹复制到另一个文件夹【英文标题】:Copy content from one folder to another 【发布时间】:2018-05-08 13:36:57 【问题描述】:

我正在尝试使用以下代码将 JPG 从一个文件夹复制或移动到另一个文件夹。

func moveItems(originPath: String, destinationPath: String, successBlock:@escaping () -> Void, errorBlock:@escaping (_ error: Error) -> Void) 
    do 
        try FileManager.default.copyItem(atPath: originPath, toPath: destinationPath)
        successBlock()
     catch 
        print(error.localizedDescription)
        errorBlock(NSError())
    

但我总是收到以下错误:

打开 /var/mobile/Containers/Data/Application/E138FDE0-A036-48D9-8E7C-518B6A5E452C/Documents/tailsImages/: 文件存在“3A75A51A-0946-45AF-BF1D-F4EB4D71ED68.png”不能 已复制到“文档”,因为已存在同名项目 存在。

有两个问题我不明白。一是目标文件夹不是错误所指的“文档”,二是JPG仅存在于destinationPath文件夹中。

(lldb) po originPath "/var/mobile/Containers/Data/Application/E138FDE0-A036-48D9-8E7C-518B6A5E452C/Documents/tailsImagesSync/3A75A51A-0946-45AF-BF1D-F4EB4D71ED68.png"

(lldb) po 目的地路径 "/var/mobile/Containers/Data/Application/E138FDE0-A036-48D9-8E7C-518B6A5E452C/Documents/tailsImages/"

【问题讨论】:

你应该在destinationPath中添加fileName。 检查您是否将文件名添加到destinationPath,并确保destinationPath 与originPath 不同,您可以使用fileManager.fileExists 进行双重检查。 谢谢,它成功了。发布答案@ivarun @bruno Great :) 添加为答案请接受并投票,这将有助于其他人找到答案。 【参考方案1】:

您应该在destinationPath 中附加文件名。这对你有用。

【讨论】:

以上是关于将内容从一个文件夹复制到另一个文件夹的主要内容,如果未能解决你的问题,请参考以下文章

将 Localizable.Strings 从一个项目复制到另一个项目

在 vi 中将内容从一个文件复制并粘贴到另一个文件

使用 Python 从一个文本文件复制到另一个文本文件

复制多级文件,将一个文件夹中的所有内容复制到另一个文件夹中

使用 nodejs 将文件夹内容复制到另一个文件夹

仅复制文件夹