重命名目录(无法找到路径的一部分.)
本文关键字:路径 一部分 重命名 | 更新日期: 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();