zoukankan      html  css  js  c++  java
  • import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.io.FileFilter;
    public class Folder{
    private static FolderFilter folderFilter;
    private static FilesFilter filesFilter;
    public static void main(String[] args){
    folderFilter=new FolderFilter();
    filesFilter=new FilesFilter();
    switch(args.length){
          case 0:tree(".");break;
          case 1:tree(args[0]);break;
          case 2:
              if(args[0].toLowerCase().equals("add")){
                  //添加新文件夹
              }
              else if(args[0].toLowerCase().equals("del")){
                  //删除文件夹
              }
              tree(".");
              break;
    }
    }
    public static void tree(String path){
         try{
            System.out.println(new File(path).getCanonicalPath());
               doTree(new File(path),"");
            }
            catch(IOException ex){
                ex.printStackTrace();
            }
    }
    private static void doTree(File parent,String prefix){
    File[] subItems=parent.listFiles(folderFilter);
    int count=parent.listFiles().length;
    for(int i=0;i<subItems.length;i++){
          if(i==count-1){
           System.out.println(prefix+"└"+subItems[i].getName());
           doTree(subItems[i],prefix.concat(" "));
          }
          else{
           System.out.println(prefix+"├"+subItems[i].getName());
           doTree(subItems[i],prefix.concat("│"));
          }
    }
    subItems=parent.listFiles(filesFilter);
    for(int i=0;i<subItems.length;i++){
          if(i==subItems.length-1){
           System.out.println(prefix+"└"+subItems[i].getName());
          }
          else{
           System.out.println(prefix+"├"+subItems[i].getName());
          }
    }
    }
    }
    class FolderFilter implements FileFilter{
    public boolean accept(File file){
    return file.isDirectory();
    }
    }
    class FilesFilter implements FileFilter{
    public boolean accept(File file){
    return file.isFile();
    }
    }

  • 相关阅读:
    泛型接口与NUnit初试
    异步文件IO的应用
    [Andrew McAfee]Enterprise 2.0下的大趋势
    silverlight
    扩展prototype库兼容w3c domajax for firefox
    开张了
    最长平台
    常见C/C++ XML解析器比较
    GIS地图开发
    几种常见 容器 比较和分析 hashmap, map, vector, list ...hash table
  • 原文地址:https://www.cnblogs.com/frostbelt/p/1763312.html
Copyright © 2011-2022 走看看