TITLE:Fileの再帰的検索

Fileの再帰的検索

Posted by terai at 2003-11-11

概要

ファイルを再帰的に検索します。

  • &jar;
  • &zip;

#screenshot

サンプルコード

public void recursiveSearch(File dir, final Vector list)
    throws InterruptedException {
  String[] contents = dir.list();
  for(int i=0;i<contents.length;i++) {
    if(Thread.interrupted()) {
      throw new InterruptedException();
    }
    File sdir = new File(dir, contents[i]);
    if(sdir.isDirectory()) {
      recursiveSearch(sdir, list);
    }else if(isGraphicsFile(sdir.getName())) {
      list.add(sdir);
    }
  }
}

解説

上記のサンプルでは、選択したフォルダ以下のファイルを再帰的にすべて検索して表示するようになっています。

JProgressBarを使った進捗状況の表示とキャンセルには、SwingWorkerを利用しています。以下のリンクなどを参考にしてみてください。

参考リンク

コメント

  • 実際に動作するサンプルを追加してみました。 -- terai