查找与文件夹中的模式匹配的最新文件

时间:2015-02-11 20:37:50

标签: java filter filelist

我正在编写一个需要2个输入的方法:

  1. String name

  2. String path

  3. 然后输出最新的pdf(以pdf作为扩展名)文件名,以name(这是一个变量)开头,并在路径中。

    我正在使用:

    public String getLatestMatchedFilename(String path, String name){
        File dir=new File(path);    
        File[] files = dir.listFiles(new FilenameFilter() {
            public boolean accept(File dir, String name) {
                return name.startsWith();
            }
        });
    }
    

    但是,我不知道如何将name中的值传递给accept方法,因为它是一个变量并且每次都会更改。

1 个答案:

答案 0 :(得分:0)

将名称更改为名为name的变量之一。使用String name标记方法中的final参数(或其所具有的名称),以便在匿名类中使用并直接使用它。

以下是代码的外观:

public String getLatestMatchedFilename(String path, final String name) {
    File dir = new File(path);    
    File[] files = dir.listFiles(new FilenameFilter() {
        public boolean accept(File dir, String nameFilter) {
            return nameFilter.startsWith(name);
        }
    });
    // rest of your code ...
}