C# 文件过滤器
首先说明一个示例,分析一下Filter属性的构成:“ Excel文件|*.xls ”,前面的“Excel文件”成为标签,是一个可读的字符串,可以自定定义,“|*.xls”是筛选器,表示筛选文件夹中后缀名为.xls的文件,“*”表示匹配Excel文件名称的字符串。
OK,下面说说我们经常要用到的几种情况:
1. Filter是null或Empty,表示显示所有文件,并总会显示文件夹
2. 需要筛选特定的文件,设置Filter属性为“标签|*.后缀”,按照这个格式设置,标签可以自定义,是字符串即可,后缀表示你需要筛选的文件后缀,例如“.txt、.doc”等
3. 需要筛选多种文件,比方说需要筛选图片文件,但是图片文件的后缀有几种,例如jpg、png、gif等,当需要同时筛选这些文件,设置Filter属性为“标签|*.jpg;*.png;*.gif”,注意:只是在筛选器中多添加了几个后缀,不同后缀之间使用分号隔开
4.当需要筛选多种文件,但是不同时将它们全部列出来,只有用户分别通过下拉列表选择需要的文件类型时,才进行筛选。这种情况下只需要多设置几个筛选器即可,filter属性设置如下:“标签1|*.jpg|标签2|.png|标签3|.gif”。注意:不同的筛选器之间使用“|”分隔即可。
Filter属性类似与正则表达式,试用*表示匹配文件名的字符,使用“.后缀”匹配文件的后缀名,通过连接后缀(试用;号将需要的后缀分开)表示同时筛选所有的符合后缀的文件,通过“|”连接不同的筛选器表示通过用户选择后缀名称来进行文件筛选
private void btnupload_Click(object sender, EventArgs e) { using (OpenFileDialog open = new OpenFileDialog()) { open.Multiselect = false; open.Title = "打开文件"; open.Filter = "图片|*.jpg;*.png;*.gif;*.jpeg;*.bmp"; if (open.ShowDialog() == DialogResult.OK) { } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗