java統計某個文件夾下面的.txt文件的個數(遞歸)
java怎么才能統計某個文件夾下面的指定類型的文件個數,我們可以通過 java 的 File 類加上遞歸來實現遍歷操作!
想到刪除指定類型的文件、或者是移動指定類型的文件,都是差不多的,只需要調用不同方法就可以~
import java.io.File; //先導包
public class Work04 {
static int count = 0; // 初始化統計變量
public static void main(String[] args) {
File file = new File("E:\\Java"); // 需要查找的文件目錄
System.out.println(getTxtFilesCount(file)); //調用方法
}
/*
* 方法名:getTxtFilesCount
* 作用:統計.txt文件個數
*/
public static int getTxtFilesCount(File srcFile){
// 判斷傳入的文件是不是為空
if (srcFile == null) {
throw new NullPointerException();
}
// 把所有目錄、文件放入數組
File[] files = srcFile.listFiles();
// 遍歷數組每一個元素
for (File f : files) {
// 判斷元素是不是文件夾,是文件夾就重復調用此方法(遞歸)
if (f.isDirectory()) {
getTxtFilesCount(f);
}else {
// 判斷文件是不是以.txt結尾的文件,並且count++(注意:文件要顯示擴展名)
if (f.getName().endsWith(".txt")) {
count++;
}
}
}
// 返回.txt文件個數
return count;
}
}
java 的 File 類常用的一些方法
public boolean createNewFile() //若文件不存在則創建新文件
public boolean mkdir() // 創建目錄 make Directory
public boolean delete() // 刪除文件及空目錄
public boolean renameTo(File test) // 重命名為 test
public boolean isFile() // 是否文件
public boolean isDirectory() // 是否目錄
public boolean canRead() // 是否可讀
public boolean canWrite() // 是否可寫
public boolean exists() // 是否存在
public boolean isHidden() // 是否隱藏
public long length() // 長度
public String getAbsolutePath() // 絕對路徑
public String getPath() // 定義的路徑
public String getName() // file名字
public long lastModified() // 最后一次修改時間
public String[] list() // 返回file下的文件和目錄名稱(字符串)
public File[] listFiles() // 返回file下的文件和目錄(文件)上面我用的