c#开发 移动文件目录的代码
1.使用 Directory.Move() 方法您可以使用移动整个目录 Directory 类从 System.IO 命名空间。这 Directory.Move() 方法常用于将目录及其内容移动到指定位置。下面的例子展示了 Directory.Move() 通过移动指定目录的方法 srcDir 到指定的目录 destDir.
using System;
using System.IO;
public class Program
{
public static void Main()
{
string srcDir = @"C:\source";
string destDir = @"C:\destination";
Directory.Move(srcDir, destDir);
}
}
请注意,源目录或目标目录可以是相对的或绝对的。这 Directory.Move() 方法抛出 IOException 如果目标目录已经存在,并且 DirectoryNotFoundException 如果找不到源或目标路径。您可以按如下所示处理它们:
using System;
using System.IO;
public class Program
{
public static void Main()
{
string srcDir = @"C:\source";
string destDir = @"C:\destination";
try {
if (Directory.Exists(srcDir) && !Directory.Exists(destDir)) {
Directory.Move(srcDir, destDir);
}
else {
Console.WriteLine("Either directory is invalid, or destination already exists.");
}
} catch (Exception ex) {
// 处理其他异常
}
}
}
如果目标文件夹已经存在,您可能想要删除它。以下示例将目录的内容复制到新位置,该位置可以是现有目录:
using System;
using System.IO;
public class Program
{
public static void Main()
{
string srcDir = @"C:\source";
string destDir = @"C:\destination";
try {
if (Directory.Exists(srcDir))
{
if (Directory.Exists(destDir)) {
Directory.Delete(destDir, true);
}
Directory.Move(srcDir, destDir);
}
else {
Console.WriteLine("The directory does not exists.");
}
} catch (Exception ex) {
// 处理其他异常
}
}
}
2.使用 DirectoryInfo.MoveTo() 方法
另一种选择是使用 DirectoryInfo.MoveTo() 移动方法 DirectoryInfo 实例及其内容到新路径。以下示例演示了使用 DirectoryInfo 班级。
using System;
using System.IO;
public class Program
{
public static void Main()
{
string srcDir = @"C:\source";
string destDir = @"C:\destination";
DirectoryInfo di = new DirectoryInfo(srcDir);
di.MoveTo(destDir);
}
}
为避免出现任何异常,您可以确保指定的源路径 srcDir 存在并且目标路径由 destDir 不存在。如果目标目录存在,请在移动前删除其中的所有文件和子目录。
using System;
using System.IO;
public class Program
{
public static void Main()
{
string srcDir = @"C:\source";
string destDir = @"C:\destination";
try {
DirectoryInfo sourceDi = new DirectoryInfo(srcDir);
if (Directory.Exists(srcDir))
{
if (Directory.Exists(destDir))
{
DirectoryInfo destDi = new DirectoryInfo(destDir);
destDi.Delete(true);
}
sourceDi.MoveTo(destDir);
}
else {
Console.WriteLine("The directory does not exists.");
}
} catch (Exception ex) {
// 处理其他异常
}
}
}
这就是将目录移动到 C# 中的另一个位置





