美文网首页
FilenameFilter与FileFileter

FilenameFilter与FileFileter

作者: 李霖神谷 | 来源:发表于2017-02-16 15:39 被阅读38次

    FilenameFilter

    import java.io.File;
    import java.io.FilenameFilter;
    
    public class FileDemo {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            File f = new File("e:/");
            String[] s = f.list(new MyFile());
            for (String string : s) {
                System.out.println(string);
            }
        }
    
    }
    
    class MyFile implements FilenameFilter {
    
        @Override
        public boolean accept(File arg0, String arg1) {
            // TODO Auto-generated method stub
            return arg1.endsWith(".txt");
        }
    
    }
    

    我们想要列出指定类型的文件时,java为我们提供了FilenameFilter接口。此接口要实现accept方法,此方法中File arg0代表父目录名,String arg1代表要返回的文件名。因为arg为String类型的,所以可以调用String类中的endsWith方法。这样就能达到目的。

    FileFileter

    import java.io.File;
    import java.io.FileFilter;
    import java.io.FilenameFilter;
    
    public class FileDemo {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            File f = new File("e:/");
            File[] s = f.listFiles(new MyFile());
            for (File file : s) {
                System.out.println(file);
            }
        }
    }
    
    class MyFile implements FileFilter {
    
        @Override
        public boolean accept(File pathname) {
            // TODO Auto-generated method stub
            return pathname.isFile() && pathname.getName().endsWith(".txt");
        }
    
    }
    

    FileFileter中的accept方法接收的是File对象,因此能够调用File中的一些方法。

    相关文章

      网友评论

          本文标题:FilenameFilter与FileFileter

          本文链接:https://www.haomeiwen.com/subject/omqhwttx.html