java遍历文件夹的两种办法:
A. 不使用递归
import java.io.File; import java.util.LinkedList; public class FileSystem { public static void main(String[] args) { long a = System.currentTimeMillis(); LinkedList list = new LinkedList(); File dir = new File("c:\\java\\"); File file[] = dir.listFiles(); for (int i = 0; i < file.length; i++) { if (file[i].isDirectory()) list.add(file[i]); else System.out.println(file[i].getAbsolutePath()); } File tmp; while (!list.isEmpty()) { tmp = list.removeFirst(); if (tmp.isDirectory()) { file = tmp.listFiles(); if (file == null) continue; for (int i = 0; i < file.length; i++) { if (file[i].isDirectory()) list.add(file[i]); else System.out.println(file[i].getAbsolutePath()); } } else { System.out.println(tmp.getAbsolutePath()); } } System.out.println(System.currentTimeMillis() - a); } }
B. 使用递归
import java.io.File; import java.util.ArrayList; public class FileSystem1 { private static ArrayList filelist = new ArrayList(); public static void main(String[] args) { long a = System.currentTimeMillis(); refreshFileList("c:\\java"); System.out.println(System.currentTimeMillis() - a); } public static void refreshFileList(String strPath) { File dir = new File(strPath); File[] files = dir.listFiles(); if (files == null) return; for (int i = 0; i < files.length; i++) { if (files[i].isDirectory()) { refreshFileList(files[i].getAbsolutePath()); } else { String strFileName = files[i].getAbsolutePath().toLowerCase(); System.out.println("---"+strFileName); filelist.add(files[i].getAbsolutePath()); } } } }
结论:经过测试,使用递归的方法B性能相对好一些。
相关推荐
NULL 博文链接:https://dietime1943.iteye.com/blog/1405929
java实现遍历文件夹内的pdf,分别转成一张jpg图片,且图片名称为与原pdf名称一致。内含PDFRenderer.jar和itext-1.3.1.jar必用jar包
遍历文件夹自动生成目录树 遍历文件夹自动生成目录树
java 遍历文件夹 叶子节点 结点 和 深度
遍历一个文件夹下面的所有文件(包括文件夹下的文件夹)
JAVA 遍历图片文件夹的 Java 图形界面 JAVA 遍历图片文件夹的 Java 图形界面
提供学习,运行成功后发上来!有修改意见的朋友请给于指导!
对某一个文件及进行遍历 输出所匹配的文件名
java遍历文件夹里图片并保存到txt文件夹 ,便于opencv进行读取训练集
例如url=c:\文件夹1,而文件夹1中包含多个文件夹,现在程序要求遍历所有文件夹找出文件夹中的文件,然后原样保存到D盘的文件夹中去。原样是指只需文件夹中文件过去就可以,不用再还原文件夹。从键盘键入文件夹
本篇文章主要介绍了JAVA 遍历文件夹下的所有文件(递归调用和非递归调用) ,具有一定的参考价值,有兴趣的可以了解一下。
主要为大家详细介绍了Java遍历文件夹下所有文件并重新命名,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
java遍历文件夹工具类共4页.pdf.zip
遍历某文件夹下的
NULL 博文链接:https://ningwuyu.iteye.com/blog/1138554
遍历文件夹中的路径复制,在控制台输出文件名和路径,java应用程序,将一个包含多个子目录和文件的目录复制到另外一个指定的目录下。
主要为大家详细介绍了java中File类应用遍历文件夹下所有文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
java代码,遍历文件目录下所有的文件并列出其名称。新手代码,如有冒犯,请多指教
JAVA SMB共享文件夹操作文件jar支持smb2、smb3.rar
用java实现遍历文件夹中文件并且以树形结构输出