zoukankan      html  css  js  c++  java
  • java通过文件路径读取该路径下的所有文件并将其放入list中

    java通过文件路径读取该路径下的所有文件并将其放入list中

     
    java中可以通过递归的方式获取指定路径下的所有文件并将其放入List集合中。

    假设指定路径为path,目标集合为fileList,遍历指定路径下的所有文件,如果是目录文件则递归调用,如果是普通文件则放入fileList中。
    根据这个思路,得到java源代码如下所示:
    //方法getFiles根据指定路径获取所有的文件
    public ArrayList<File> getFiles(String path) throws Exception {
      //目标集合fileList
      ArrayList<File> fileList = new ArrayList<File>();
      File file = new File(path);
      if(file.isDirectory()){
        File []files = file.listFiles();
        for(File fileIndex:files){
          //如果这个文件是目录,则进行递归搜索
     if(fileIndex.isDirectory()){
       getFiles(fileIndex.getPath());
     }else {
          //如果文件是普通文件,则将文件句柄放入集合中
       fileList.add(fileIndex);
     }
        }
    }
      return fileList;
    }

    获取文件名:
    fileList = getFiles(this.getMenuPath());
    ArrayList<String> iconNameList = new ArrayList<String>();//返回文件名数组
    for(int i=0;i<fileList.size();i++){
        String curpath = fileList.get(i).getPath();//获取文件路径
        iconNameList.add(curpath.substring(curpath.lastIndexOf("\")+1));//将文件名加入数组
    }
    其中,在action中声明变量menuPath,并生成get和set方法:
      private String menuPath = "/resources/menuIcon";
    则this.getMenuPath()可以获取该路径,传入getFiles()方法时,该路径变为访问的绝对路径,例如“D:\tomcat\...\resources\menuIcon”

  • 相关阅读:
    百度网盘下载速度慢的问题解决
    问题汇总
    centos 遇到Name or service not known
    centos7 下 python3 和python2 同时存在但是无法使用pip3 的解决方案
    pycharm2020(最简单的方法)配置远程连接服务器
    pycharm2020.1.2激活
    centos安装成功bart标注工具
    keras遇到bert实战一(bert实现分类)
    使用Array.slice(0) 实现数组浅拷贝
    try/catch/finally 语句
  • 原文地址:https://www.cnblogs.com/limeiky/p/6229055.html
Copyright © 2011-2022 走看看