1. 程式人生 > >過濾器練習:獲取指定目錄以及子目錄下的檔案(副檔名為.java):使用遞迴和File物件過濾器!

過濾器練習:獲取指定目錄以及子目錄下的檔案(副檔名為.java):使用遞迴和File物件過濾器!

package cn.itcast.day01_03;

import java.io.File;
import java.io.FileFilter;

/*
 * 過濾器練習:獲取指定目錄以及子目錄下的檔案(副檔名為.java):使用遞迴和File物件過濾器!
 */
public class Filter_Demo {
	public static void main(String [] args) {
		File dir = new File("D://project-2018-09-11");
		getFiles(dir);
	}

	private static void getFiles(File dir) {
		//列出指定目錄下的檔案和資料夾,傳入過濾器!
		File [] files = dir.listFiles(new FileFilter() {
			public boolean accept(File pathname) {
			return (pathname.isDirectory()) || (pathname.isFile() && pathname.getName().endsWith(".java"));
		}
		});
		if(files !=null) {
			for(File file:files) {
				if(file.isDirectory()) {
					getFiles(file);
				}else {
					System.out.println(file);
				}
			}
		}
	}
}

在這裡插入圖片描述