从'Computer'访问USB驱动器

本文关键字:驱动器 USB Computer 访问 | 更新日期: 2023-09-27 18:17:24

我正试图以编程方式将文件从桌面复制到USB驱动器。但是,当尝试运行此代码时,我得到一个错误,指出无法找到部分路径:

if (dr == DialogResult.Yes)
{
    string selected = comboBox1.GetItemText(comboBox1.SelectedItem);
    string filePath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
    string filefolder = @"'UpgradeFiles";
    string fileLocation = filePath + filefolder;
    if (!Directory.Exists(fileLocation))
    {
        Directory.CreateDirectory(fileLocation);
    }
    else if (Directory.Exists(fileLocation))
    {
        DirectoryInfo di = new DirectoryInfo(fileLocation);
        FileInfo[] fileList = di.GetFiles();
        foreach (FileInfo file in fileList)
        {
            string DrivePath = Environment.GetFolderPath(
                Environment.SpecialFolder.MyComputer);
            string CopyToDrive = comboBox1.Text;
            file.CopyTo(DrivePath + CopyToDrive, false);
        }
    }
}

组合框中包含选择的驱动器号。当我试图添加"计算机'驱动器"时,我接近这个错误吗?

从'Computer'访问USB驱动器

您的文件。CopyTo(DrivePath + CopyToDrive, false)应该是:

File.CopyTo(CopyToDrive + File.Name, false);

,但是有一点语法糖,比如使用Path。组合或字符串。格式,而不仅仅是"+"。

问题是文件。当您只提供目录时,CopyTo需要结束位置的目录和文件名。这可以在方法调用的文档中看到:https://msdn.microsoft.com/en-us/library/f0e105zt(v=vs.110).aspx