JAvaフォルダとそのサブフォルダを巡る

1053 ワード

JAvaはフォルダとそのサブフォルダを遍歴し、コードは以下の通りです.

import java.io.File;
import java.util.Vector;

public class FileRecursion {

	public static void recursion(String root, Vector<String> vecFile) {
		File file = new File(root);
		File[] subFile = file.listFiles();
		for (int i = 0; i < subFile.length; i++) {
			if (subFile[i].isDirectory()) {
				recursion(subFile[i].getAbsolutePath(), vecFile);
			} else {
				String filename = subFile[i].getName();
				vecFile.add(subFile[i].getAbsolutePath()+ filename);
			}
		}
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Vector<String> vecFile = new Vector<String>();
		recursion("D:/asp/oa", vecFile);

		for (String fileName : vecFile) {
			System.out.println(fileName);
		}
	}

}

分析はFileのlistFiles()メソッドで所与のディレクトリの下のすべてのファイルとフォルダを取得し,再帰呼び出し方式を用いてすべてのファイルを取得する.