c# - 递归地从目录中删除文件但保持目录结构不变

标签 c# .net linq file linq-to-objects

为了清理测试文件,我正在尝试执行以下操作。但它不会清除文件也不会产生错误。

我是否漏掉了一些明显的东西?

    private void CleanUpTempDirFiles()
    {
        var fileGenerationDir = new DirectoryInfo(Path.Combine(Path.GetTempPath(), "TestFilesDir"));

        fileGenerationDir.GetDirectories().ToList().ForEach(dir => dir.GetFiles().ToList().ForEach(file => file.Delete()));
    }

最佳答案

您可以使用 SearchOption.AllDirectories 获取所有子目录中的所有文件

 fileGenerationDir.GetFiles("*", SearchOption.AllDirectories).ToList().ForEach(file=>file.Delete());

关于c# - 递归地从目录中删除文件但保持目录结构不变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13603893/

相关文章:

c# - Gridview 检查其是否为空或 null

c# - 插入排序算法c#

c# - 其中列表包含列表中的任何内容

c# - 如何使用 LINQ 计算最大组中的对象数?

c# - 将 LINQ 查询转换为 Dictionary<string, string[]>

c# - 在 vb.net 或 c# 中以编程方式弹出和收回 CD 驱动器

C# ActiveUp Mail 无法获取邮件

c# - 在 C# 中检查盒装原始整数类型的数值的最快方法

c# - 获取包含枚举值的整数表示的字符串

.net - Nhibernate查询转换为通用列表时出错