http://expert.csdn.net/Expert/topic/1410/1410007.xml?temp=.2336847

解决方案 »

  1.   

    http://expert.csdn.net/Expert/topic/1410/1410007.xml?temp=.2336847是作文件选择框用的。过滤类:
    import java.io.*;public class TestFileFilter implements FileFilter
    {
        private static final String fliterPDF = "pdf";
        private static final String fliterRAR = "rar";
        private static final String fliterZIP = "zip";
        // Accept all directories and all pdf, rar, zip files.
        public boolean accept(File f) {
            if (f.isDirectory()) {
                return true;
            }
            int length = f.getName().length();
            String extension = f.getName().substring(length-3,length);
                if (extension.equals(fliterPDF) ||
                    extension.equals(fliterRAR) ||
                    extension.equals(fliterZIP)) {
                    return true;
                } else {
                    return false;
                }    }
    }调用方法:File listFile = new File("C:\\temp");
            FileFilter ff = new TestFileFilter();
            File[] files = listFile.listFiles(ff);
            for(int i=0 ; i < files.length ; i++){
                if(files[i].isFile())
                    System.out.println("文件名称:"+files[i].getName());
            }
      

  2.   

    使用File和FileFilter类共同实现,用File找到当前目录下的所有文件和文件夹,再用FileFilter进行过滤,OK?
      

  3.   

    static void listall(String path) {
    File listFile = new File(path);
    FileFilter ff = new Test.TestFileFilter();
    File[] files = listFile.listFiles(ff);
    for (int i = 0; i < files.length; i++) {
    if (files[i].isFile())
    System.out.println("文件名称:" + files[i].getName());
    if(files[i].isDirectory())
    listall(path+"\\"+files[i].getName());
    }
    }