c# 删除某个文件夹下所有空目录,解决因删除空目录后上一组成空目录没有删除的情况
2021-05-30 04:20
标签:改进 lld direct get 删除空目录 tar 避免 arc search 网上有相关方法,但是有一个BUG,就是目录下的子目录为空,只会删除目录,不会删除父目录,应该是判断时还有子目录存在,不为空。以下是我类似方法改进后,去除这个BUG。 直接看代码 主要是判断所有文件夹及子文件夹是不是有文件,如果没有就直接删除包括子目录,循环时增加判断是否存在对应的目录,可以避免因删除目录及子目录后,前面取的文件夹列表对应元素目录实际不存了报错。 c# 删除某个文件夹下所有空目录,解决因删除空目录后上一组成空目录没有删除的情况 标签:改进 lld direct get 删除空目录 tar 避免 arc search 原文地址:https://www.cnblogs.com/vikimono/p/11066778.html private void button1_Click(object sender, EventArgs e)
{
string dir = @"D:\TestTemp";
KillEmptyFolder(dir);
}
private void KillEmptyFolder(string sPath)
{
DirectoryInfo info = new DirectoryInfo(sPath);
foreach (string item in Directory.GetFileSystemEntries(sPath, "*", SearchOption.AllDirectories))
{
if (!File.Exists(item))
{
if (Directory.Exists(item))
{
string[] nFiles = Directory.GetFiles(item, "*.*", SearchOption.AllDirectories);
if (nFiles.Count() == 0)
{
Directory.Delete(item, true);
}
}
}
}
}
文章标题:c# 删除某个文件夹下所有空目录,解决因删除空目录后上一组成空目录没有删除的情况
文章链接:http://soscw.com/index.php/essay/89396.html