如何使用c#计算文件夹中的Excel文件数?

时间:2011-05-27 05:35:34

标签: c#

我需要计算目录中excel文件,pdf文件的数量。

我已使用

计算目录中的文件总数
 System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(@"D:\");
 int count = dir.GetFiles().Length; 

有任何建议吗?

7 个答案:

答案 0 :(得分:5)

这是一个LINQ解决方案。

var extensions = new HashSet<string>(StringComparer.OrdinalIgnoreCase)
{
    ".xls",
    ".xlsx",
    ".pdf",
};
var baseDir = @"D:\";
var count = Directory.EnumerateFiles(baseDir)
                     .Count(filename =>
                                extensions.Contains(Path.GetExtension(filename)));

答案 1 :(得分:2)

GetFiles方法中使用SearchPattern。

dir.GetFiles("*.XLS");

答案 2 :(得分:1)

int count = 0;
foreach (string file in Directory.GetFiles(@"D:\"))
{
    if (file.EndsWith(".pdf") || file.EndsWith(".xls"))
    {
        count++;
    }
}

答案 3 :(得分:0)

   var count = System.IO.Directory.GetFiles(@"D:\")
               .Count(p => Path.GetExtension(p) == ".xls");

答案 4 :(得分:0)

String[] excelFiles=Directory.GetFiles("C:\\", "*.xls");

答案 5 :(得分:0)

int count = Directory.GetFiles(path).Count(f =>(f.EndsWith(".xls") || f.EndsWith(".xlsx")));

答案 6 :(得分:0)

简单

int count = dir.GetFiles("*.txt").Length + dir.GetFiles("*.pdf").Length