c# - Directory.GetFiles 具有多个过滤器,收集一个字符串数组

标签 c# asp.net

我想将新项目添加到字符串数组中,或者我可以保留在列表中。有人可以展示如何做到这一点吗?

 string sourceDir = "C:\\Users\\ozkan\\Desktop\\foto\\"
 string[] picList;        
 string pattern = "*.jpg|*.png|*.gif";
 string[] filters = pattern.Split('|');

 foreach (string filter in filters)
 { 
    // I want to collect all files url in picList
    // Directory.GetFiles returns string array
    picList = Directory.GetFiles(sourceDir, filter);           
 }

最佳答案

尝试:

 string sourceDir = "C:\\Users\\ozkan\\Desktop\\foto\\"
 string[] picList;        
 string pattern = "*.jpg|*.png|*.gif";
 string[] filters = pattern.Split('|');
 picList =  filters .SelectMany(f=> Directory.GetFiles(sourceDir , f)).ToArray();          

关于c# - Directory.GetFiles 具有多个过滤器,收集一个字符串数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13286344/

相关文章:

c# - 无法使用 EF6 在 mysql 数据库上查询或插入

c# - 创建由参数/委托(delegate)发送的类的实例

c# - 如何在ASP.NET MVC 2应用程序中实现向导类型的页面导航?

html - 根据容器宽度减小标签文本大小

c# - 将非属性绑定(bind)到数据网格列 DataField?

c# - 统一: Flip 2D GameObject(Clone) while GetKeyDown

c# - IL 和参数

c# - 查找调用者方法名称

c# - jQuery 加载 txt 文件 .html()

c# - ASP.net MVC 获取当前 View 引擎