MENU

Java 再帰的にファイルを検索

목차

자바 디렉토리から再帰的にファイルを検索

자바 で、指定されたディレクトリから、サブディレクトリも含め再帰的にファイルを検索し、検索条件に該当するファイルリストを取得するサンプルプログラムを紹介します。
これらは UNIX 系コマンドの ls -R 、Windows 系コマンドの dir /s と同等の処理を行います。
また、検索対象のファイル名にはワイルドカード文字として*を指定したり、正規表現を使用して検索する事ができます。

 使い方の例として、以下の場合、ディレクトリ filelist をサブディレクトリを含め再帰的に検索し、拡張子 java のファイルリストを取得します。

FileSearch search = new FileSearch();
File[] files = search.listFiles(“C:/filelist/”, “*.java”);


샘플 프로그램

실행 결과

 サンプルプログラムを確認するために、filelist ディレクトリを作成し以下のファイルを用意しました。

ファイル名と更新日付が表示されています。

※尚、現在の日付は2007/08/18だとします。

C:\filelist
    │  aaa.java      2007/08/18
    │  bbb.java      2007/08/18
    └─dir
           ccc.java   2007/07/17
           ddd.java   2007/08/18
           eee.jpg    2007/08/16

◆실행예


◆출력 결과

●全てのファイルを取得
1:	C:\filelist\aaa.java
2:	C:\filelist\bbb.java
3:	C:\filelist\dir\ccc.java
4:	C:\filelist\dir\ddd.java
5:	C:\filelist\dir\eee.jpg

●拡張子javaのファイルを取得
1:	C:\filelist\aaa.java
2:	C:\filelist\bbb.java
3:	C:\filelist\dir\ccc.java
4:	C:\filelist\dir\ddd.java

●全てのファイルとディレクトリを取得
1:	C:\filelist\aaa.java
2:	C:\filelist\bbb.java
3:	C:\filelist\dir
4:	C:\filelist\dir\ccc.java
5:	C:\filelist\dir\ddd.java
6:	C:\filelist\dir\eee.jpg

●現在の日付から、2日前以降に更新されたファイルを取得
1:	C:\filelist\aaa.java
2:	C:\filelist\bbb.java
3:	C:\filelist\dir\ddd.java
4:	C:\filelist\dir\eee.jpg

●現在の日付から、30日以前の古いファイルを取得
1:	C:\filelist\dir\ccc.java
  • URL을(를) 확인했습니다!
목차