The best way to move a directory with all its contents(files or folders) in C#?

后端 未结 6 1874
萌比男神i
萌比男神i 2021-01-16 16:55

What is the best way to move directory with all its contents(files or folders) in C#?

I used the following codes, but it throws The Directory is not empty

6条回答
  •  轮回少年
    2021-01-16 17:27

    What about the following solution, it works well :

    public static void DeleteDirectory(string targetDir)
    {
        string[] files = Directory.GetFiles(targetDir, "*", SearchOption.AllDirectories);
        foreach (string file in files)
            File.Delete(file);
        new Microsoft.VisualBasic.Devices.Computer().FileSystem.DeleteDirectory(targetDir, DeleteDirectoryOption.DeleteAllContents);
    }
    
    public static void MoveDirectory(string source, string dest)
    {
        new Microsoft.VisualBasic.Devices.Computer().FileSystem.CopyDirectory(source, dest, true);
        DeleteDirectory(source);
    }
    

提交回复
热议问题