【发布时间】:2011-11-13 18:38:47
【问题描述】:
我想使用 C# .NET 将目录从一个位置移动到另一个位置。我以这种简单的方式使用了Directory.Move 甚至是 DirectoryInfo(带有 MoveTo):
// source is: "C:\Songs\Elvis my Man"
// newLocation is: "C:\Songs\Elvis"
try
{
// Previous command was: Directory.Move(source, newLocation);
DirectoryInfo dir = new DirectoryInfo(source);
dir.MoveTo(newLocation);
}
catch (Exception e)
{
Console.WriteLine("Error: "+ e.Message);
}
但是正在执行的操作(对于这两种情况)是将文件夹名称从“source”重命名为“newLocation”
我的预期是什么?文件夹“Elvis my man”现在将位于“Elvis”文件夹中。
发生了什么事?“Elvis my man”已更改为“Elvis”(重命名)。如果目录“Elvis”已经存在,则不能将其更改为“Elvis”(因为他不能重名),因此我得到一个例外。
我做错了什么??
非常感谢!!!
【问题讨论】: