Java扫描文件夹下所有文件名

  

MIS内容项目系统,基于文档资源管理管理的,需要扫描一个文件夹下面的所有文件,需求的代码实现。

        包q.test.filescanner;      进口java.io.File;   进口java.util.ArrayList;   进口java.util.LinkedList;      进口q.test.filescanner.exception.ScanFilesException;/* *   * @author   */公开课FolderFileScanner {      私有静态ArrayListscanFiles=new ArrayList ();/* * linkedList实现* */私有静态LinkedListqueueFiles=new LinkedList ();/* *   * TODO:递归扫描指定文件夹下面的指定文件   * @return ArrayList   * @author   * @time 2017年11月3日   */公共静态ArrayList* * scanFilesWithRecursion * *(字符串folderPath)抛出ScanFilesException {   ArrayListdirctorys=new ArrayList ();   文件目录=新文件(folderPath);   如果(! directory.isDirectory ()) {   把新的ScanFilesException (' + folderPath +”“+”输入路径不是一个目录,请输入正确的目录的路径。^ _ ^ ^ _ ^”);   }   如果(directory.isDirectory ()) {   文件[]文件列表=directory.listFiles ();   for (int i=0;我& lt;filelist.length;我+ +){/* *如果当前是文件夹,进入递归扫描文件夹* */如果文件列表[我].isDirectory ()) {//绝对路径名字符串   dirctorys.add(文件列表[我].getAbsolutePath ());/* *递归扫描下面的文件夹* */* * scanFilesWithRecursion * *(文件列表[我].getAbsolutePath ());   }/* *非文件夹* */其他{   scanFiles.add(文件列表[我].getAbsolutePath ());   }   }   }   返回scanFiles;   }/* *   *   * TODO:非递归方式扫描指定文件夹下面的所有文件   * @return ArrayList   * @param folderPath需要进行文件扫描的文件夹路径   * @author   * @time 2017年11月3日   */公共静态ArrayListscanFilesWithNoRecursion(字符串folderPath)抛出ScanFilesException {   文件目录=新文件(folderPath);   如果(! directory.isDirectory ()) {   把新的ScanFilesException (' + folderPath +”“+”输入路径不是一个目录,请输入正确的目录的路径。^ _ ^ ^ _ ^”);   }   其他{//首先将第一层目录扫描一遍   文件[]文件=directory.listFiles ();//遍历扫出的文件数组,如果是文件夹,将其放入到linkedList中稍后处理   for (int i=0;我& lt;files.length;我+ +){   如果(文件[我].isDirectory ()) {   [我]queueFiles.add(文件);   其他}{//暂时将文件名放入scanFiles中   scanFiles.add(文件[我].getAbsolutePath ());   }   }//如果linkedList非空遍历链表   而(! queueFiles.isEmpty ()) {//移出linkedList中的第一个   文件headDirectory=queueFiles.removeFirst ();   文件[]currentFiles=headDirectory.listFiles ();   for (int j=0;j & lt;currentFiles.length;j + +) {   如果(currentFiles [j] .isDirectory ()) {//如果仍然是文件夹,将其放入linkedList中   queueFiles.add (currentFiles [j]);   其他}{   scanFiles.add (currentFiles [j] .getAbsolutePath ());   }   }   }   }      返回scanFiles;   }   }   之前      

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

Java扫描文件夹下所有文件名

Copyright © 2020-2023 feiqueyun.cn. All Rights Reserved. 肥雀云_南京肥雀信息技术有限公司版权所有 南京肥雀信息技术有限公司 苏ICP备16063723号-5