【发布时间】:2017-06-14 22:50:07
【问题描述】:
我一直在尝试:
- 读取特定文件夹中的所有文件;
- 仅选择以特定模式名称 + .csv 结尾的那些
到目前为止我有什么:
string[] fileEntriesout = System.IO.Directory.GetFiles(dir + "\\" + "output\\", "*.csv*", System.IO.SearchOption.AllDirectories);
这运行良好,但它会获取所有 .CSVs 文件;
我尝试了什么:
string[] extensions = { "_fv", "_body", "_out" };
string[] fileEntriesout = Directory.GetFiles(dir + "\\" + "output\\", "*.csv*", System.IO.SearchOption.AllDirectories).Where(f => extensions.Contains(System.IO.Path.GetFileNameWithoutExtension(f).ToLower())).ToArray();
string[] fileEntriesout = System.IO.Directory.GetFiles(dir + "\\" + "output\\", "*.*", System.IO.SearchOption.AllDirectories).Where(f => nextensions.Contains(new FileInfo(f).Extension.ToLower())).ToArray();
string[] fileEntriesout = System.IO.Directory.GetFiles(dir + "\\" + "output\\", "*.*", System.IO.SearchOption.AllDirectories).Where(f => nextensions.Contains(new FileInfo(f).Name.ToLower())).ToArray();
string[] fileEntriesout = System.IO.Directory.GetFiles(dir + "\\" + "output\\", "*.*", System.IO.SearchOption.AllDirectories).Where(f => nextensions.Contains(new FileInfo(f).Extension.ToLower())).ToArray();
我尝试了我发现的不同想法,但似乎没有一个可行。
总结:
- 我需要 string[] 获取所有包含(通常在文件名末尾)名称的 .CSVs 文件:“_fv”或“_body”或“_out”。
谢谢。
【问题讨论】:
-
当你形成路径时,使用
Path.Combine方法。您假设默认情况下路径分隔符是 `\` 字符。
标签: c#