无法将文件从一个目录复制到另一个目录

本文关键字:一个 复制 另一个 文件 | 更新日期: 2023-09-27 18:24:50

我写了一个复制函数,将文件从一个目录复制到另一个目录,但一直收到"不支持给定路径的格式"的异常。这是我的功能代码:

private void Copy(string letter)
{
    string sourceDir = (txtPath.ToString());
    string targetDir = letter;
    foreach (var file in Directory.GetFiles(sourceDir))
        File.Copy(file, Path.Combine(targetDir, Path.GetFileName(file)), true);
}

无法将文件从一个目录复制到另一个目录

要引用TextBox的内容,请使用TextBox.Text属性

private void Copy(string letter)
{
    string sourceDir = txtPath.Text.Trim();
    string targetDir = letter;
    // Check if source and target exists....
    if(Directory.Exists(sourceDir) && Directory.Exists(targetDir))
    {
        foreach (var file in Directory.GetFiles(sourceDir))
            File.Copy(file, Path.Combine(targetDir, Path.GetFileName(file)), true);
    }
    else
    {
       MessageBox.Show("Source=" + sourceDir + " or Target: " + targetDir + " doesn't exist"): 
    }
}

直接在TextBox的实例上调用ToString()方法会返回类的名称,后跟text属性(类似于"System.Windows.Forms.TextBox,text:content of the TextBox"),显然这不是一个有效的路径

从你的评论中还不清楚可变字母的内容是什么。因此,您还应该确保变量targetDir指向一个实际的有效路径。(单个驱动器号C D或E不是有效路径)