.NETのDirectory.getFiles()メソッドは、特定のフィルターに一致するファイルリストを取得するための便利な方法を提供します。ただし、さまざまなファイルタイプをフィルタリングしようとする場合、デフォルトの動作は、最初のフィルターに一致するファイルのみを取得することです。
「.mp3 |
.jpg」や「.mp3;.jpg」などの組み合わせは、2つのファイルタイプでこれをキャプチャできませんでした。この制限を解決するには、次の代替案を検討してください。 .NET 4.0以降のバージョンの場合:linqクエリを実装して、ディレクトリ内のすべてのファイルパスを取得するDirectory.EnmerateFiles()の結果をフィルタリングします。特定のファイル拡張子(.mp3および.jpg)のフィルタリングクエリ。
初期バージョンの場合.net:
directory.getFiles()メソッドを使用して、任意の拡張子に一致するファイルを取得します(
。<code class="language-csharp">var files = Directory.EnumerateFiles("C:\path", "*.*", SearchOption.AllDirectories) .Where(s => s.EndsWith(".mp3") || s.EndsWith(".jpg"));</code>
注:
パフォーマンスを最適化するためのendswith関数の代わりに、文字列関数の使用に関するアドバイスを検討してください。さらに、enumerateFiles()メソッドを使用した場合に発生する可能性のあるメモリの問題に注意してください。以上がDirectory.GetFiles() で複数のファイル フィルターを組み合わせるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。