Java递归读取文件夹下所有文档

/**
 * 递归读取文件夹下所有文档
 * @author Administrator
 *
 */
public class FileLoop{
    private static List<File> fileList = new ArrayList<File>();

    public static void main(String[] args) {
        List<File> list = fileReadLoop("c:/dir");

        for(int i=0; i<list.size(); i++){
             System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(list.get(i).lastModified()))+":"+list.get(i).getName());
         }
    }

     /**
      * 循环获取指定文件夹下的所有文件
      * @param path
      */
     private void loopReadDir(String path){
         File filePath = new File(path);
         File[] list = filePath.listFiles();
         if(list!=null && list.length>0){
             for(int i=0; i<list.length; i++){
                 File f = list[i];
                 if(f.isFile() && !f.isHidden()){
                     fileList.add(f);
                 }else if(f.isDirectory() && !f.isHidden()){
                     loopReadDir(f.getPath());
                 }
             }
         }
     }

     /**
      * 将文件按日期排序
      * @param list
      * @return
      */
     private void sortFileList(){
        //按文件日期排序
         Collections.sort(fileList, new Comparator<File>() {
            @Override
            public int compare(File o1, File o2) {
                if(o1.lastModified() > o2.lastModified()){
                    return -1;
                }else if(o1.lastModified() == o2.lastModified()){
                    return 0;
                }else{
                    return 1;
                }
            }
        });
     }

     /**
      * 调用静态方法
      * @param path
      * @return
      */
    public static List<File> fileReadLoop(String path) {
        FileLoop fileCon = new FileLoop();
        fileCon.loopReadDir(path);
        fileCon.sortFileList();
        return fileList;
    }
}
时间: 2024-10-07 20:04:22

Java递归读取文件夹下所有文档的相关文章

Java递归读取文件路径下所有文件名称并保存为Txt文档

本文用递归的方法实现读取一个路径下面的所有文件并将文件名称保存到Txt文件中,亲测可用. 递归读取文件路径下的所有文件: /** * 递归读取文件路径下的所有文件 * * @param path * @param fileNameList * @return */ public static ArrayList<String> readFiles1(String path, ArrayList<String> fileNameList) { File file = new File

Java实现读取文件夹下(包括子目录)所有文件的文件名

在编程的过程中,经常会用到对文件的读写操作等.比如,找出某一个文件夹下的所有文件名等. 下面的程序给出了,获取某一给定文件夹下所有文件的绝对路径的程序.可以作为某一个模块,在需要的时候直接使用. package src; import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStrea

C#遍历SharePoint文档库下所有文档包括文档库中子文件夹下所有文档

/// <summary> /// 获取取子文件下所有文件 /// </summary> /// <param name="web"></param> /// <param name="folders"></param> private void EnumerateFolders(SPWeb web, SPFolderCollection folders) { foreach (SPFolder

Photoshop脚本 &gt; 打开文件夹中所有文档

源自:http://coolketang.com/tutorials/menu2lesson4.php 本节将演示如何使用脚本,打开一个文件夹下所有文档.首先创建一个空白的脚本文档,并保存在硬盘上某个位置. 首先创建一个空白的脚本文档,并保存在硬盘上某个位置. 接着输入脚本代码: //定义一个变量[sampleFolder],用来表示硬盘某个路径上的文件夹. var samplesFolder = Folder("E:\Images"); //定义一个变量[fileList],用来表示

java非递归检索文件夹下所有文件的代码

把开发过程比较重要的一些内容段做个珍藏,下面的内容段是关于java非递归检索文件夹下所有文件的内容,应该是对大家有所帮助. DateFormat df = DateFormat.getDateTimeInstance();LinkedList<File> folders = new LinkedList<File>();LinkedList<File> filelists = new LinkedList<File>();File dir = new Fil

File:迭代读取文件夹下的文件或者文件夹

在项目中,有时需要获取文件夹下的所有文件或者文件夹,以及对应的最后修改时间.下面的代码实现了迭代读取指定路径下的文件,修改时间可以自己加lastModified()方法. public class Folder { public static void main(String[] args) { String path="F:/111"; readFile(path); } /**迭代读取文件夹下所有子文件或者文件夹 * @param path 文件夹路径 */ public stat

angular调用WCF服务,读取文件夹下图片显示列表,下载另存为图片

读取文件夹下的文件 public string ReadImagesPaths() { string result = string.Empty; try { string path = System.IO.Directory.GetCurrentDirectory(); DirectoryInfo files = new DirectoryInfo(path+@"\Images"); FileInfo[] fileinfo = files.GetFiles(); foreach (F

php 读取网页源码 , 导出成txt文件, 读取xls,读取文件夹下的所有文件的文件名

<?php // 读取网页源码$curl = curl_init();curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLOPT_HEADER, 1);curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//这个是重点.$contents = curl_exec($curl); //导出成

VBA读取文件夹下所有文件夹及文件内容,并以树形结构展示

Const TR_LEVEL_MARK = "+"Const TR_COL_INDEX = "A"Const TR_COL_LEVEL = "E"Const TR_COL_NAME = "C"Const TR_COL_COUNT = "D"Const TR_COL_TREE_START = "F"Const TR_ROW_HEIGHT = 23Const TR_COL_LINE_WIDT