2017-04-11 7 views
0

現在、特定のディレクトリ内のファイルを検索するときにはDirectory.EnumerateFilesを使用していますが、ファイル名に「アクセス」という単語を含むすべてのファイルが必要です。私は、下図のようにあなたが開始文字または終了文字または名前の一部でフィルタすることができます知っている:名前の一部でファイルを見つけるにはどうしたらいいですか? C#

var txtFiles = Directory.EnumerateFiles(sourceDirectory, partialName , SearchOption.AllDirectories); 

foreach (string currentFile in txtFiles) 
{ 
    readFile(currentFile); 
} 

ただし、ファイル名は以下のようなものとして:3492_access_log_76、それは技術的には、アクセスをピックアップしていません部分ファイル名は3492_access_log_76です。

「acc」などの文字列を取り込む方法はありますか?

+1

実際に使用しているメソッドのドキュメントを読むようにしてください。 – Steve

答えて

1

第2パラメータは検索パターンです。ワイルドカード文字を使用して、必要なパターンを作成する必要があります。例えば。あなたの名前の一部が、ファイル名に、とにかく表示されることがあれば、あなたは部分名の前後に*文字を追加する必要があります

var partialName = "*access*"; // or "*acc*" if you want less precise search 

*は、任意の文字

2

使用ワイルドカードの任意の数を意味します。 "*access*"は、「アクセス」という単語を含むすべてのファイルを取得します。

関連する問題