如何使用Java从一个文件夹中获取所有文本文件?

Dmi*_*ryB 6 java file

我需要从文件夹中读取所有".txt"文件(用户需要选择此文件夹).

请指教怎么做?

小智 11

你可以使用filenamefilter它很简单的用法public static void main(String [] args)throws IOException {

    File f = new File("c:\\mydirectory");

    FilenameFilter textFilter = new FilenameFilter() {
        public boolean accept(File dir, String name) {
            return name.toLowerCase().endsWith(".txt");
        }
    };

    File[] files = f.listFiles(textFilter);
    for (File file : files) {
        if (file.isDirectory()) {
            System.out.print("directory:");
        } else {
            System.out.print("     file:");
        }
        System.out.println(file.getCanonicalPath());
    }

}
Run Code Online (Sandbox Code Playgroud)

只需创建一个filenamefilter实例覆盖接受方法,你想要的