一,文件系统
用java遍历一个文件夹下的所有文件,并打印出文件夹和文件数量
package IO;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
/**
* 遍历文件夹下的所有文件
*
* @author machao
* @since Jan 16, 2018
*/
public class ListFilesDemo {
static int fileCount = 0;
static int directoryCount = 0;
public static void main(String[] args) {
// 文件路径
String filePath = "E:" + File.separator + "MyUFile";
// 递归查询该路径下所有文件
getFileList(filePath);
System.out.println("该目录下一共有" + directoryCount + "个文件夹," + fileCount
+ "个文件。");
}
/**
* 递归查询该路径下所有文件及文件夹
*
* @param path
*/
public static void getFileList(String path) {
File dir = new File(path);
File[] fiels = dir.listFiles();// 将该目录下所有文件全部放入数组
if (fiels.length > 0) {
for (File f : fiels) {
if (f.isDirectory()) {// 是文件夹
// 获取绝对路径并递归
System.out.println("文件夹---" + f.getAbsolutePath());
directoryCount++;
getFileList(f.getAbsolutePath());
} else if (f.isFile()) {
fileCount++;
System.out.println("文件---" + f.getAbsolutePath());// 绝对路径的文件名
// System.out.println(f.getAbsolutePath());
}
}
} else {
System.out.println("文件夹[" + dir.getAbsolutePath() + "]为空");
}
}
}
其中文件路径是我自己配的一个路径。
打印结果如图: