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性能相对好一些。
相关推荐
描述中提到的链接指向了一篇博客文章,可能详细解释了如何使用Java遍历文件夹,并可能包含了一些实用技巧或者特定的实现案例。遗憾的是,由于我们无法直接访问该链接,所以无法提供更具体的信息。 在标签中,"源码...
在IT领域,遍历文件夹并自动生成目录树是一项常用的任务,特别是在文件管理、数据整理以及自动化脚本编写中。这个过程通常涉及到操作系统层面的文件系统操作,编程语言中的文件I/O(输入/输出)以及目录结构的表示。...
在计算机编程中,遍历文件夹是经常遇到的需求,特别是在处理大量数据或组织文件系统时。这个过程通常涉及递归地访问一个...熟悉并掌握不同编程语言中遍历文件夹的方法,将有助于我们更高效地处理与文件系统相关的任务。
2. **Java文件I/O操作**:为了遍历文件夹并处理每个PDF文件,Java的`java.io`包提供了必要的API,如`File`类用于表示文件和目录,`FileInputStream`和`FileOutputStream`用于读写文件,以及`FileVisitor`接口可以...
在Java编程语言中,遍历一个目录下的所有文件和子目录是一项常见的任务,尤其是在处理文件系统操作时。这里我们将深入探讨如何使用Java API来实现这一功能,并解释相关的知识点。 首先,Java提供了`java.io.File`类...
以上就是使用Java遍历文件夹的基本知识,包括叶子节点、结点和遍历深度的概念,以及如何利用`java.io.File`类进行实际操作。在实际应用中,你可能需要根据项目需求进行适当的调整,例如添加错误处理、优化性能或者...
2. Java:Java的java.io.File类提供了list(), listFiles()等方法来获取目录下的文件和子目录,配合递归可以实现遍历。 3. C#:C#的System.IO命名空间下的Directory和FileInfo类提供了类似的功能,如Directory....
在IT领域,遍历文件夹并建成目录树是一项常见的任务,尤其在文件管理、数据处理和自动化脚本编写中。这个过程涉及到操作系统层面的文件系统操作,通常通过编程语言实现。下面将详细介绍如何进行这项操作,并提供一些...
本文主要介绍了Java遍历文件夹下所有文件并重新命名的方法,提供了详细的示例代码,具有一定的参考价值。 Java文件遍历 Java文件遍历是指在Java程序中遍历文件夹下的所有文件,并执行相应的操作。在本文中,我们将...
### 运用Java遍历文件夹的方法总结 在日常开发工作中,经常需要处理文件系统相关的操作,例如遍历文件夹中的所有文件或特定类型的文件。本文将详细介绍两种使用Java进行文件夹遍历的方法:递归算法和非递归算法,并...
提供学习,运行成功后发上来!有修改意见的朋友请给于指导!
Java 中遍历文件夹的方法 #### 2.1 使用 `java.io.File` 类 Java 提供了 `java.io.File` 类来处理文件和目录。通过这个类的方法,可以轻松实现文件夹的遍历。 #### 2.2 方法示例 ```java public static void ...
在Java编程中,遍历文件夹和解析XML是两种常见的操作,它们在处理数据和构建应用程序时发挥着关键作用。...结合上述知识点,你应能从提供的"java遍历文件夹解析XML.doc"文档中获取更多关于这两个主题的详细信息。
对于压缩包文件"java遍历文件夹工具类共4页.pdf.zip",这可能是一个包含有关上述话题的详细教程或文档。解压后,用户可以获得四页关于Java遍历文件夹工具类的详细信息。然而,由于这里没有提供具体的文件内容,我们...
对某一个文件及进行遍历 输出所匹配的文件名
在IT领域,遍历文件夹查找文件是一项...了解这些知识点后,你可以根据具体需求选择合适的编程语言和方法,编写出能够高效遍历文件夹并查找特定文件的代码。在实际操作中,一定要结合具体的上下文和需求进行调整和优化。
java遍历文件夹里图片并保存到txt文件夹 ,便于opencv进行读取训练集
例如url=c:\文件夹1,而文件夹1中包含多个文件夹,现在程序要求遍历所有文件夹找出文件夹中的文件,然后原样保存到D盘的文件夹中去。原样是指只需文件夹中文件过去就可以,不用再还原文件夹。从键盘键入文件夹
在遍历文件夹的过程中,同时记录文件夹和文件的数量,并最终输出统计结果。 #### 实现原理 通过两个静态变量 `countFile` 和 `countDir` 来分别记录文件和文件夹的数量。每次遍历时,如果遇到文件则 `countFile` ...