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();
    }
    }

  • 相关阅读:
    关于Java 拷贝数组方法 Arrays.copyOf() 是地址传递还是值传递
    n皇后问题
    子集
    排列
    矩阵翻转
    删除集合元素的方法
    Java最大值与最小值
    Spring Security +Oauth2 +Spring boot 动态定义权限
    VirtualBox Centos7虚拟机集群配置
    VirtualBox使用Centos7与主机共享文件夹
  • 原文地址:https://www.cnblogs.com/frostbelt/p/1763312.html
Copyright © 2011-2022 走看看