C# Directory.Delete报错“目录不是空的”解决方案

  • 两种情况下会出现这样的错误:

1、当文件夹中包含有其他文件夹时,想要删除根文件夹,直接用Directory.Delete(path),是会报“目录不是空的”的错误,

                                        

2、当该文件夹被打开了,运行的时候会出现这样的错误。

  • 用法:

Directory.Delete用法有两种:

public static void Delete(string path);

public static void Delete(string path, bool recursive);

path:路径

recursive:是否删除目标文件夹中的子文件夹及子文件。所以,这种报错的,只要将第二个参数设置为TRUE就可以了,

  • 正确的操作应该是:

检查文件夹是否被打开,并在Delete函数中添加true参数。

string path=@"D:\..\..";
if (Directory.Exists(path))
    Directory.Delete(path,true);

 


版权声明:本文为weixin_39559414原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。