如何根据文件名和/或扩展名检索文件夹的所有文件大小

本文关键字:文件夹 检索 文件大小 扩展名 何根 文件名 | 更新日期: 2023-09-27 18:26:08

我有一个表单,用户可以在其中导航到特定的文件夹。他们导航到的文件夹中会有很多文件夹,在几个级别的文件夹中都会有一个名为"file.zip"的zip文件。因此,这意味着会有许多文件夹,所有这些文件夹中都有一个"filezip"。我想扫描所选文件夹中的所有"file.zip"文件。我最终将只寻找那些大小为0kb或为空的"file.zip"文件。我想我需要使用LINQ来返回父文件夹中的文件列表,如下所示:

 string[] files = Directory.GetFiles(txtbxOldFolder.Text)
                      .Select(f => Path.GetFiles(f))
                      .ToArray();

但我也需要它们各自的大小,这样我以后就可以创建一个空的或显示大小为0kb的任何zip文件的目录列表。我想,也许有一种方法可以根据名称(file.zip)返回目录和每个文件的大小,这样我以后就可以遍历数组,为那些为空/大小为0kb的file.zip创建目录日志。

如何根据文件名和/或扩展名检索文件夹的所有文件大小

var directory = @"c:'myfolder";
var files = Directory.GetFiles(directory, "file.zip", SearchOption.AllDirectories)
.Select(name => new FileInfo(name))
.Where(f => f.Length == 0).ToArray();