下面是详细的攻略:
1. 获取文件夹下所有文件
为了获取一个文件夹下的所有文件,我们可以使用Java中的File类和递归算法。可以先定义一个方法,传入文件夹的路径,使用该方法时传入希望查找的文件格式。
import java.io.File;
public class FileUtil {
/**
* 获取指定文件夹下某一类型的所有文件
*
* @param dirPath 文件夹路径
* @param extension 文件扩展名,如.txt、.pdf等
* @param fileList 存放符合条件的文件列表
*/
public static void getAllFilesInFolder(String dirPath, String extension, List<File> fileList) {
File folder = new File(dirPath);
if (!folder.exists()) {
System.out.println("文件夹不存在!");
return;
}
File[] files = folder.listFiles();
for (File file : files) {
if (file.isDirectory()) {
//递归调用自身,处理子目录
getAllFilesInFolder(file.getPath(), extension, fileList);
} else if (file.getName().endsWith(extension)) {
fileList.add(file);
}
}
}
}
这是获取指定文件夹下某一类型的所有文件的通用方法。dirPath
是文件夹路径,extension
是文件扩展名,fileList
是符合条件的文件列表,可以用来处理或者遍历这些文件。
2. 示例一:输出某个文件夹下所有的.txt文件
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
String dirPath = "D:/test";
String extension = ".txt";
List<File> fileList = new ArrayList<>();
FileUtil.getAllFilesInFolder(dirPath, extension, fileList);
for (File file : fileList) {
System.out.println(file.getAbsolutePath());
}
}
}
这个示例中,假设文件夹路径为D:/test,我们要输出所有的.txt文件。首先调用之前编写的getAllFilesInFolder
方法获取所有的文件列表,并将它们存储到一个List<File>
中,然后遍历该列表,并输出每个文件的路径。
3. 示例二:输出某个文件夹下所有的.jpg文件
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
String dirPath = "D:/test";
String extension = ".jpg";
List<File> fileList = new ArrayList<>();
FileUtil.getAllFilesInFolder(dirPath, extension, fileList);
for (File file : fileList) {
System.out.println(file.getAbsolutePath());
}
}
}
这个示例和第一个示例类似,假设文件夹路径为D:/test,我们要输出所有的.jpg文件。同样的,调用之前编写的getAllFilesInFolder
方法获取所有的文件列表,存储到List<File>
中,然后遍历该列表,输出每个文件的路径。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java实现输出文件夹下某个格式的所有文件实例代码 - Python技术站