ホームページ > Java > &#&チュートリアル > Apache Commons-IO を使用して Java でワイルドカード パターンに一致するファイルを見つけるにはどうすればよいですか?

Apache Commons-IO を使用して Java でワイルドカード パターンに一致するファイルを見つけるにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-15 00:22:15
オリジナル
959 人が閲覧しました

How Can I Find Files Matching Wildcard Patterns in Java Using Apache Commons-IO?

Java でのワイルドカード パターンを含むファイルの検索

ここでの質問には、次のようなワイルドカード文字列に一致するファイルを識別する方法を見つけることが含まれます。 Java では「../Test?/sample*.txt」。 Apache commons-io の WildcardFileFilter が利用できるにもかかわらず、相対ディレクトリ パス内のファイルを検索するためのその実装については混乱が生じる可能性があります。

Apache Commons-IO の使用

Apache commons-io の FileUtils を利用すると、次のコード スニペットが可能になります。採用:

File dir = new File(".");
FileFilter fileFilter = new WildcardFileFilter("sample*.java");
File[] files = dir.listFiles(fileFilter);
ログイン後にコピー

このコードは、現在のディレクトリ内の一致するファイルの配列を返します。

ディレクトリの処理

内のファイルを検索するにはサンプル パターンの「Test1」や「Test4」などのサブディレクトリに、追加のループを追加できます。追加:

File[] dirs = new File(".").listFiles(new WildcardFileFilter("Test*.java");
for (int i=0; i<dirs.length; i++) {
   File dir = dirs[i];
   if (dir.isDirectory()) {
       File[] files = dir.listFiles(new WildcardFileFilter("sample*.java"));
   }
}
ログイン後にコピー

これにより、指定されたワイルドカード パターンに一致するファイルが再帰的に検索され、リストされます。

その他の考慮事項

で説明されている代替アプローチ問題は、ワイルドカード構文を使用する Apache Ant のソース コードを調べることです。ただし、これはほとんどのユーザーにとって最も簡単な解決策ではない可能性があります。

さらに、Java ランタイム環境 (JRE) はコマンドライン引数内の単純なワイルドカードを自動的に解析し、基本的なシナリオのプロセスを簡素化することにも注目してください。

以上がApache Commons-IO を使用して Java でワイルドカード パターンに一致するファイルを見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート