美文网首页
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