我有一個名爲像幾個文件:C#打開文件與字符變量
- 6327_1-SWD001-171016_1.txt
- 6327_1-SWD011-181016_1.txt
- 6327_1,SWD028-191016_1.txt
正如你可以看到每個文件SWD值互換,我想知道是否有打開一個文件,不知道社署值的方式,這樣的事情:
6327_1-SWD ??? - 171016_1.txt
或者StreamReader
是否需要文件的EXACT名稱?
我有一個名爲像幾個文件:C#打開文件與字符變量
正如你可以看到每個文件SWD值互換,我想知道是否有打開一個文件,不知道社署值的方式,這樣的事情:
6327_1-SWD ??? - 171016_1.txt
或者StreamReader
是否需要文件的EXACT名稱?
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
files
則包含符合模式的所有文件名(包括路徑)的陣列。 Directory.GetFiles
支持*
和?
通配符。
(無關側面說明:退房File.ReadLines
,File.ReadAllLines
和File.ReadAllText
通常情況下,你不需要一個StreamReader再閱讀文本文件的內容,請注意,這些方法都需要完整的文件名也。)
你打算打開哪一個文件? –
@JanneMatikainen:只有一個匹配(包含'_171016_'的那個)。 – Heinzi
對不起,我的意思是我有更多的日期(2016年10月17日)只有SWD001變化 – Bart88