我目前正在创建OpenFileDialog
,我在其中创建了一些用于导入某些文件的过滤器。
目前我的过滤器是:
var ofd = new OpenFileDialog();
ofd.Filter = "Supported files|*.dat;*.xlsx;*.csv;*.txt
用户还应该能够导入任何带有数字扩展名的文件,如:
.1337,.42,.007
我知道可以创建一个类似下面的过滤器来匹配[00000,99999]
var sb = new StringBuilder("Numeric Files |");
for (int i = 0; i < 99999; i++)
{
sb.Append("*." + (i + ";").PadLeft(5, '0'));
}
ofd.Filter = sb.ToString();
但这导致每种可能性的模式匹配非常缓慢,我觉得应该有其他方式。
我还考虑过接受对话框中的所有文件,然后过滤掉扩展名,但我想知道是否还有其他方法。
现在的问题是:
有没有办法使用正则表达式等来匹配上面的内容?
希望你能提供帮助:)
答案 0 :(得分:1)
也许最好自己实现并从FileDialog派生(OpenFileDialog是密封的),可以将正则表达式添加为过滤器