練習:列出指定檔案夾下面的子檔案包括子檔案夾下面的所有檔案
import java.io.File;public class FileDemo {public static void main(String[] args) {File file = new File("D:\\MyTemp");listMyFiles(file);}/** * 列出指定檔案夾下面的子檔案包括子檔案夾下面的所有檔案 * @param f */public static void listMyFiles(File f){System.out.println(f);if(f.isDirectory()){File[] fs = f.listFiles();for (File file : fs) {listMyFiles(file);}}}}
FilenameFilter介面:
練習:列出指定檔案夾中包含指定尾碼名的所有檔案
import java.io.File;import java.io.FilenameFilter;class MyFileNameFilter implements FilenameFilter{private String ext;public MyFileNameFilter(String ext){this.ext = ext;}/** * 測試指定檔案是否應該包含在某一檔案清單中。 * 參數: * dir - 被找到的檔案所在的目錄。 * name - 檔案的名稱。 * 返回: * 若且唯若該名稱應該包含在檔案清單中時返回 true;否則返回 false。 */public boolean accept(File dir, String name) {return name.endsWith(ext);}}public class FilenameFilterDemo {public static void main(String[] args) {File file = new File("D:/MyTemp");String[] fs = file.list(new MyFileNameFilter(".doc"));for (String string : fs) {System.out.println(string);}}}