ディレクトリ配下の全ファイルを処理する

概要
再帰的にディレクトリを読んで、配下のファイルを全部処理します。executeメソッドにFileが渡されるので、コピった後そこだけ変えて処理をするようなイメージ。

import java.io.File;

/**
 * Java1.6使用
 * @author mwSoft
 */
public class Test {
  
  /**
   * ディレクトリを再帰的に読む
   * @param folderPath
   */
  public void readFolder( File dir ) {
    
    File[] files = dir.listFiles();
    if( files == null )
      return;
    for( File file : files ) {
      if( !file.exists() )
        continue;
      else if( file.isDirectory() )
        readFolder( file );
      else if( file.isFile() )
        execute( file );
    }
  }
  
  /**
   * ファイルの処理
   * @param filePath
   */
  public void execute( File file ) {
    // ここにやりたい処理を書く
    System.out.println( file.getPath() );
  }

  /**
   * main 
   * @param args
   */
  public static void main(String[] args) {
    new Test().readFolder( new File( "dir_name" ) );
  }
}

戻る    ご意見、ご要望