• 查找指定文件夹下面的文件


    简单测试了一把,比较随意哈

    public class FileT2
    {
    static String path = "E:/";
    File f = null;
    File [] file = null;
    static List<String> list_m = new ArrayList<String>();
    static List<String> list_f = new ArrayList<String>();
    //记录文件个数
    int i = 0;
    //记录文件夹个数
    int j = 0;
    public static void main(String[] args) throws Exception
    {
    FileT2 ft = new FileT2();
    ft.getP();
    }
    /**
    *
    * @throws InterruptedException
    *
    * 获取文件夹下面的1级目录,查看进度,出现异常容易定位
    */
    public void getP() throws InterruptedException
    {
    file = new File(path).listFiles();
    for(File file_N : file)
    {
    getN(file_N.getAbsolutePath());
    System.out.println("执行完毕,休眠1秒"+file_N.getName()+"---"+file_N.getPath());
    Thread.sleep(1000);
    }
    }
    //记录文件查询执行的时间
    public void getN(String path)
    {
    long left = System.currentTimeMillis();
    getA(path);
    long right = System.currentTimeMillis();
    long time = (right - left) / 1000;
    pList();
    System.out.println("花费时间:"+time+"秒");
    }
    //第一步,遍历目录
    public void getA(String path)
    {
    file = new File(path).listFiles();

    for(File file_N : file)
    {
    if(file_N.isFile())
    {
    list_f.add(++j+file_N.getName()+"文件");
    }
    else if(file_N.isDirectory())
    {
    list_m.add(++i+file_N.getName()+"文件夹");
    //递归调用
    getA(file_N.getPath());

    }
    else
    {
    System.out.println("--------其他--------"+file_N);
    }
    }


    }
    //第二步 输出文件的查询
    private static void pList()
    {
    System.out.println("----------------文件-------------------------------");
    for(String s_name : list_f)
    {
    System.out.println("---"+s_name+"---");
    }
    System.out.println("----------------文件-------------------------------");
    System.out.println("----------------文件夹-------------------------------");
    for(String f_name : list_m)
    {
    System.out.println("---"+f_name+"---");
    }System.out.println("----------------文件夹-------------------------------");
    }


    }

  • 相关阅读:
    “国产化替代”加速!这些软件要硬刚国外巨头
    企业研发流程演进之路
    胜任力模型
    金字塔原理
    扒一扒数据中台的皇帝外衣(转)
    大数据平台构建实战
    浏览器的底层响应原理
    分库分表方案
    spring boot:用spring security加强druid的安全(druid 1.1.22 / spring boot 2.3.3)
    spring boot:用cookie保存i18n信息避免每次请求时传递参数(spring boot 2.3.3)
  • 原文地址:https://www.cnblogs.com/zssw1990/p/8371768.html
Copyright © 2020-2023  润新知