【转】java 文件 读取目录下的所有文件(包括子目录)

转自:http://www.cnblogs.com/pricks/archive/2009/11/11/1601044.html

 

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class test {

    public static void main(String[] args) {
        //目录
        File dataDir = new File("E:/资源库资源/20091111");
        //存放目录及其子目录下的所有文件对象
        List<File> myfile = new ArrayList<File>();
        //开始遍历
        listDirectory(dataDir, myfile);
        
        System.out.println("目录下包含 " + myfile.size() + "个文件:");
        for(File file : myfile){
            System.out.println(file.getAbsolutePath());    
        }
    }
    /** *//**
     * 遍历目录及其子目录下的所有文件并保存
     * @param path 目录全路径
     * @param myfile 列表:保存文件对象
     */
    public static void listDirectory(File path, List<File> myfile){
        if (!path.exists()){
            System.out.println("文件名称不存在!");
        }
        else
        {
            if (path.isFile()){
                myfile.add(path);
            } else{
                File[] files = path.listFiles();
                for (int i = 0; i < files.length; i++  ){
                    listDirectory(files[i], myfile);
                }
            }
        }
    }
}

 

posted @ 2015-07-24 17:52  Java碎碎念  阅读(484)  评论(0编辑  收藏  举报