public static void dirList(String dir){
    String sepa = "/";
    File path = new File(dir);
    if(!path.isDirectory()  )
      return;
    String[] list = path.list() ;
    for(int i = 0;i<list.length ;i++){
      File f = new File(dir+sepa+list[i]);
      if(f.isDirectory() ){
        System.out.println(list[i]) ;
        dirList(dir+sepa+list[i]);
      }
      else{
        System.out.println(list[i]) ;
      }
    }
  }

解决方案 »

  1.   

    void isdir() {
        File[] f = new File("c:\\").listFiles();
        for (int i = 0; i < f.length; i++) {
          if (f[i].isDirectory()) {
            System.out.println(f[i]);
          }
        }
      }
    这个实现c:\下目录的打印,如果要实现子目录打印,写个递归就行了
      

  2.   

    void dirName(String 目录名){
    File f = new File(dirName);
    String dirFile[] = f.list();
    for(int i = 0;i<dirFile.length ;i++){
    File f1 = new File(dirName ,dirFile[i]);
    if(f1.isDirectory()){
    System.out.println(f1.getAbsolutePath().toString());
    dirName(f1.getAbsolutePath().toString());
    }
    }
    }
      

  3.   

    import java.io.*;public class MyDir
    { //ild@--缩进函数
    public static void ls(File fldr,String str)
    {
    File files[] = fldr.listFiles();
    for (int i=0; i<files.length; i++)
    { //打印目录
    if (files[i].isDirectory()){
    System.out.print(str+"<Dir>");
    System.out.println(files[i].getName());
    //@ild--传递两个参数的递归
    ls(files[i],str+"    ");
    }
    /*打印出文件
    else{
    System.out.println(str+files[i].getName());
    }
    */
    }
    } //测试
    public static void main(String[] args){
    //[email protected]
    File fStart = new File(System.getProperty("user.dir"));
    String str="";
    MyDir.ls(fStart,str);
    }
    }