Java:查找指定文件夹中.txt文件

2022-08-31 16:29:18

是否有内置的Java代码可以解析给定的文件夹并在其中搜索文件?.txt


答案 1

您可以使用该类提供的方法。listFiles()java.io.File

import java.io.File;
import java.io.FilenameFilter;

public class Filter {

    public File[] finder( String dirName){
        File dir = new File(dirName);

        return dir.listFiles(new FilenameFilter() { 
                 public boolean accept(File dir, String filename)
                      { return filename.endsWith(".txt"); }
        } );

    }

}

答案 2

尝试:

List<String> textFiles(String directory) {
  List<String> textFiles = new ArrayList<String>();
  File dir = new File(directory);
  for (File file : dir.listFiles()) {
    if (file.getName().endsWith((".txt"))) {
      textFiles.add(file.getName());
    }
  }
  return textFiles;
}

您希望执行不区分大小写的搜索,在这种情况下:

    if (file.getName().toLowerCase().endsWith((".txt"))) {

如果要通过目录树以递归方式搜索文本文件,则应该能够将上述内容改编为递归函数或使用堆栈的迭代函数。