c# 删除所有空文件夹及其子文件

//多线程操作需要先加锁

lock(this){

//层次遍历所有子文件夹

string[] dirs = Directory.GetDirectories("文件路径", "", SearchOption.AllDirectories);

//为了先删除子目录再删除父目录,需要让子目录排在父目录前面,所以倒序文件列表
            Array.Reverse(dirs);
            foreach (var dir in dirs)
            {
                var info = new DirectoryInfo(dir);

                //检查是否包含子文件夹及文件
                if (info.GetFileSystemInfos().Length == 0)
                {

                        //由于子文件夹或文件随时会增加,不强制删除子文件及子文件夹
                        info.Delete();
                }
            }
 }

上一篇:Python编程:six库兼容Python 2 和 Python 3


下一篇:python基础3-列表,元组,字典