解决方案 »

  1.   


    public static void demo_5() {
    File f5 = new File("F:\\javacode");
    listAll(f5);
    }
    public static void listAll(File x) {
    File[] file = x.listFiles();
    System.out.println(file.length);
    for (int i = 0; i < file.length; i++) {
    if (file[i].isDirectory()) {
    // System.out.println(file[i].list(new FilterByName()));
    listAll(file[i]);
    } else if (file[i].list(new FilterByName()) != null) {
    System.out.println(file[i].getName() + "  " + file[i]);
    }
    else continue;
    } }过滤器
    package FileTest;import java.io.File;
    import java.io.FilenameFilter;public class FilterByName implements FilenameFilter { @Override
    public boolean accept(File dir, String name) { return name.endsWith(".pdf");
    }}
      

  2.   

    public class demo_5 { public static void main(String[] args) {
    File f5 = new File("F:\\论文\\中国知网论文\\中国知网论文");
    listAll(f5);
    }

    public static void listAll(File x) {
    // method 1
    File[] file = x.listFiles();
    for (int i = 0; i < file.length; i++) {
    if (file[i].isDirectory()) {
    listAll(file[i]);
    } else if (file[i].getName().endsWith(".pdf")) {
    System.out.println(file[i].getName() + "  " + file[i]);
    }
    else 
    continue;
    }

    System.out.println("==================================");

    // method2
    FilterByName filter = new FilterByName();  
                    String[] files = x.list(filter);  
                    for(String a:files){  
                        System.out.println(a);  
                    }  
    }
    }

    class FilterByName implements FilenameFilter {
        
    @Override
    public boolean accept(File dir, String name) {
    return name.endsWith(".pdf");
    }
    }