为什么不';下面的代码将文件从一个位置移动到另一个位置

本文关键字:位置 一个 移动 另一个 文件 代码 为什么不 | 更新日期: 2023-09-27 18:21:17

string source = textbox1.text;
string destination = textBox2.Text;
bool exists = System.IO.Directory.Exists(source);
if (exists)
{
    // its create directory to destination
    System.IO.Directory.CreateDirectory(destination);
    //  when directory creates it moves it
    System.IO.Directory.Move(source, destination); 
}
// File Not found exception unhandled

为什么不';下面的代码将文件从一个位置移动到另一个位置

文档对此非常清楚:

此方法使用destDirName指定的名称创建一个新目录,并将sourceDirName的内容移动到新创建的目标目录。如果尝试将目录移动到已存在的目录,则会出现IOException

您在调用Move之前显式地创建了目标目录,因此获得一个IOException

取消CreateDirectory呼叫即可。这至少可以让它潜在地工作——如果你真的得到了FileNotFoundException(你没有这么说,但我想这就是评论的意思),那么这表明source找不到。。。尽管正如对此答案的评论中所指出的,应该引发DirectoryNotFoundException

相关文章: