创建有效的文件扩展名列表

本文关键字:扩展名 列表 文件 有效 创建 | 更新日期: 2023-09-27 18:08:00

我正在对特定的文件格式应用一个函数

string extension = Path.GetExtension(files[i]);
if (extension == ".txt")
{
    DoSomething(files[i]);
}

但是我有太多的文件扩展名,不只是txt。创建白名单并检查它是否在名单上的基本方法是什么?

创建有效的文件扩展名列表

你可以创建一个白名单,检查扩展是否在里面

var whitelist = new[]
{
    ".txt", ".bat", ".con"
};
string extension = Path.GetExtension(files[i]);
if (whitelist.Contains(extension))
{
    DoSomething(files[i]);
}

如果您的白名单大小变得很大(超过20),请尝试使用HashSet以获得更好的性能

 List<string> fileExtensions = new List<string>();
                      fileExtensions.AddRange(".txt,.png,.bmp,.pdf".Split(','));
                      string extension = Path.GetExtension(files[i]);
                      if (fileExtensions.Contains(extension, StringComparison.OrdinalIgnoreCase))
                      {
                        //  DoSomething(files[i]);
                      }