重命名目录(无法找到路径的一部分.)

本文关键字:路径 一部分 重命名 | 更新日期: 2023-09-27 18:06:07

string sourceDir = @"E:'Images'3'2'1";
string destDir = @"E:'Images'33'22'11";
Directory.Move(sourceDir, destinationDir);

我必须重命名目录,我使用directory . move(),但给我错误:

Could not find a part of the path.

重命名目录(无法找到路径的一部分.)

您要移动到的文件夹,在您移动之前应该存在。

Directory.Move之前调用Directory.Create([path to target folder]

似乎在string destDir = @"E:'Images'33'22'11"; Images'33'22'不存在。您不能使用Directory.Move创建新的子目录,因此E:'Images'33'22'必须已经存在。

查看MSDN。

您需要确保要移动文件夹的位置已经存在。为了方便起见,您可以做如下操作:

基本上你需要确保你要移动文件的路径存在。

string sourceDir = @"E:'Images'3'2'1";
string destName = "1";
string destDir = @"E:'Images'33'22'";
Directory.CreateDirectory(destDir); // Create the location path
Directory.Move(sourceDir, Path.Combine(destDir + destName));

Edit:添加基本错误处理。

这是一个基本错误处理的例子,以确保源目录和目标目录都存在。

string sourceDir = @"E:'Images'3'2'1";
string destName = "1";
string destDir = @"E:'Images'33'22'";
if (!Directory.Exists(sourceDir))
{
    Console.WriteLine("Source Directory does not exist.");
    Console.Read();
    //return; // Handle issue where Source Dir does not exist.
}
if (!Directory.Exists(destDir))
{
    Console.WriteLine("Destination Directory does exist. Created.");
    Directory.CreateDirectory(destDir);
}
if (Directory.Exists(Path.Combine(destDir + destName)))
{
    Console.WriteLine("Target Destination already exist.");
    Console.Read();
    return;
}
Directory.Move(sourceDir, Path.Combine(destDir + destName));
Console.Read();