文件夹下有很多子文件夹,同样子文件夹下也有很多子文件夹,要求得到所有子文件夹的列表

解决方案 »

  1.   

    File f = new File("XXX");
    File[] subFiles = f.listFiles();
    while (f.listFiles().length > 0) { }
      

  2.   

     //递归调用获取;没工具,所以单词写错,见谅!
    void getfile(File file)
    {
     File f = new File("XXX");
            File[] subFiles = f.listFiles();
            if(subFiles!=null)
            {
              for(File f1:subFiles)
              {
                  if(f.isFile())
                  {
                     System.out.println(f1.getName);
                  }
                  else
                  {
                    getfile(f1);
                  }
             }
            }}
      

  3.   


    package fx.algorithm;import java.io.File;/**
     * 获取指定目录下所有的文件,递归调用
     * 
     * @author 咖啡
     * 
     */
    public class FileList { private static final String ROOT_DIR = "E:\\Temp";
    private static int count = 0; public static void main(String[] args) {
    find(new File(ROOT_DIR));
    System.out.println("共有文件数: " + count);
    } /**
     * 是文件就输出,是目录就继续调用自己
     */
    public static void find(File file) {
    File[] fileList = file.listFiles(); for (int i = 0; i < fileList.length; i++) {
    if (fileList[i].isDirectory()) {
    find(fileList[i]);
    } else {
    System.out.println(fileList[i]);
    count++;
    }
    }
    }
    }