C#打开带有可变字符的文件

Bar*_*t88 2 .net c# vb.net streamreader

我有一些名为的文件:

  1. 6327_1,SWD001-171016_1.txt
  2. 6327_1,SWD011-181016_1.txt
  3. 6327_1,SWD028-191016_1.txt

正如您可以看到每个文件的SWD值交换,我想知道是否有办法在不知道SWD值的情况下打开文件,如下所示:

6327_1-SWD ??? - 171016_1.txt

或者是否StreamReader需要文件的确切名称?

Hei*_*nzi 5

StreamReader需要文件的EXACT名称.但是,您可以使用它Directory.GetFiles来查找您要查找的文件:

var files = Directory.GetFiles(@"C:\Some\Directory", "6327_1-SWD???-171016_1.txt");  // C#

Dim files = Directory.GetFiles("C:\Some\Directory", "6327_1-SWD???-171016_1.txt")    ' VB
Run Code Online (Sandbox Code Playgroud)

files然后包含与您的模式匹配的所有文件名(包括路径)的数组.Directory.GetFiles支持*?通配符.

(不相关的注意事项:签出File.ReadLines,File.ReadAllLines并且File.ReadAllText.通常,您不再需要 StreamReader来读取文本文件的内容.请注意,这些方法也需要完整的文件名.)