0

ディレクトリを検索してすべてのフォルダーを選択するコードがありますが、データで始まるフォルダーのみを選択する必要があります。どうすればいいですか?

以下は、ディレクトリを通過するコードです。

    string[] filePaths = Directory.GetDirectories(defaultPath).Where(Data => !Data.EndsWith(".")).ToArray();
4

2 に答える 2

10

LINQ を使用する必要はありません。GetDirectoriesは検索パターンをサポートしており、.NET で結果を列挙する前にファイルシステムによってフィルタリングが行われる可能性があるため、おそらく大幅に高速になります。

string[] filePaths = Directory.GetDirectories(defaultPath, "Data*");

*は、0 個以上の文字に一致するワイルドカードであることに注意してください。

于 2012-05-08T17:56:25.053 に答える
1

「データで始まる」場合は、フォルダー名が「データ」で始まることを意味するだけで、これは機能します

string[] filePaths = Directory.GetDirectories(defaultPath)
    .Where(s => s.StartsWith("Data") && !s.EndsWith(".")).ToArray();
于 2012-05-08T17:56:32.380 に答える