0

このpowershellコードを使用して、4つの特定の文字で始まるファイルが特定のパスに存在するかどうかを確認しています

$myPath = "c:\myFolder\";
$myFileBegin = "abc_";
test-path "$myPath$myFileBegin*";

それは機能し、単純ですが、今は C# で同じことをしようとしています。
すべてのコードを報告するわけではありませんが、基本的にはフォルダーからすべてのファイルを取得し、Directory.GetFilesそれらのファイルをループしてRegex.IsMatch.
これは正しい方法ですか、それともpowershellのようなより速い方法がありますか?

4

3 に答える 3

3

への呼び出しで検索フィルタを指定できますDirectory.GetFiles()

Directory.GetFiles(@"c:\myFolder\", "abc_*.*");

で始まるファイルのみが返されますabc_

于 2013-08-09T12:14:19.250 に答える
2

これを試して

Directory.GetFiles(@"c:\myFolder\").Where(x => x.StartsWith("abc_"));
于 2013-08-09T12:17:02.520 に答える
1

.net 4 以降の場合:

Directory.EnumerateFiles(@"c:\myFolder", "abc_*.*")).Any()  ? true : false 

(bool)これはtrueまたはfalseを返します

于 2013-08-09T12:53:31.343 に答える