Java File listFiles()方法

java.io.File.listFiles(FilenameFilter filter) 返回抽象路径名数组,表示在目录中此抽象路径名表示,满足指定过滤器的文件和目录。

1 语法

public File[] listFiles(FilenameFilter filter)

2 参数

filter:文件名过滤器

3 返回值

该方法返回抽象路径名数组,表示在目录中此抽象路径名表示,满足指定过滤器的文件和目录。

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * java.io.File.listFiles(FilenameFilter filter)方法的例子
 */
import java.io.File;
import java.io.FilenameFilter;

public class Demo {
    public static void main(String[] args) {

        File f = null;
        File[] paths;

        try{
            // create new file
            f = new File("d:/test");

            // create new filename filter
            FilenameFilter fileNameFilter = new FilenameFilter() {

                @Override
                public boolean accept(File dir, String name) {
                    if(name.lastIndexOf('.')>0)
                    {
                        // get last index for '.' char
                        int lastIndex = name.lastIndexOf('.');

                        // get extension
                        String str = name.substring(lastIndex);

                        // match path name extension
                        if(str.equals(".txt"))
                        {
                            return true;
                        }
                    }
                    return false;
                }
            };
            // returns pathnames for files and directory
            paths = f.listFiles(fileNameFilter);

            // for each pathname in pathname array
            for(File path:paths)
            {
                // prints file and directory paths
                System.out.println(path);
            }
        }catch(Exception e){
            // if any error occurs
            e.printStackTrace();
        }
    }
}

输出结果为:

d:\test\hello.txt

热门文章

优秀文章