要在Java中读取文件夹下所有文件的文件名,可以通过以下步骤来实现:
1. 获取文件夹下所有文件
可以使用 File
类中的 listFiles()
方法获取指定文件夹下的所有文件。该方法会返回一个 File
数组,其中包含指定文件夹下的所有文件和文件夹,但不包括子目录中的文件。
下面是一个示例代码:
import java.io.File;
public class ListAllFiles {
public static void main(String[] args) {
File folder = new File("C:/Folder");
File[] files = folder.listFiles();
for (File file : files) {
if (file.isFile()) {
System.out.println(file.getName());
}
}
}
}
上述代码将会输出指定文件夹下所有文件的文件名。但是,如果这个文件夹下还有子目录,那么这些子目录中的文件名将无法被获取。因此,我们需要考虑如何访问子目录中的所有文件。
2. 获取文件夹下所有文件(包括子目录中的文件)
要获取文件夹下所有文件(包括子目录中的文件),我们可以使用递归的方式遍历文件夹中的所有文件。具体的实现步骤如下:
- 遍历当前文件夹下所有文件并输出文件名
- 如果当前文件是目录,则递归调用该目录的方法
下面是一个示例代码:
import java.io.File;
public class ListAllFilesInDirectory {
public static void main(String[] args) {
File folder = new File("C:/Folder");
listFilesForFolder(folder);
}
public static void listFilesForFolder(File folder) {
for (File file : folder.listFiles()) {
if (file.isDirectory()) {
listFilesForFolder(file);
} else {
System.out.println(file.getName());
}
}
}
}
在上述代码中,listFilesForFolder()
方法会先遍历指定文件夹下的所有文件。如果当前文件是目录,则递归调用该方法,将会继续遍历子目录中的文件。
示例说明
下面给出两个示例:
- 读取 D 盘中的所有文件(包括子目录中的文件)并输出文件名
import java.io.File;
public class ListAllFilesInDirectory {
public static void main(String[] args) {
File folder = new File("D:/");
listFilesForFolder(folder);
}
public static void listFilesForFolder(File folder) {
for (File file : folder.listFiles()) {
if (file.isDirectory()) {
listFilesForFolder(file);
} else {
System.out.println(file.getName());
}
}
}
}
- 读取桌面上的 test 文件夹中的所有文件(包括子目录中的文件)并输出文件名
import java.io.File;
public class ListAllFilesInDirectory {
public static void main(String[] args) {
File folder = new File(System.getProperty("user.home") + "/Desktop/test/");
listFilesForFolder(folder);
}
public static void listFilesForFolder(File folder) {
for (File file : folder.listFiles()) {
if (file.isDirectory()) {
listFilesForFolder(file);
} else {
System.out.println(file.getName());
}
}
}
}
以上就是实现Java读取文件夹下所有文件的完整攻略。如果您还有其他问题或疑问,请随时提出。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java实现读取文件夹下(包括子目录)所有文件的文件名 - Python技术站