Java utilise la fonction accept() de la classe FileNameFilter pour filtrer les fichiers dans un répertoire spécifié
Introduction :
En Java, nous devons souvent filtrer les fichiers dans un répertoire spécifié. À l'heure actuelle, vous pouvez utiliser l'interface FileNameFilter pour filtrer les noms de fichiers. Cet article explique comment utiliser la fonction accept() de la classe FileNameFilter pour implémenter le filtrage de fichiers et fournit des exemples de code correspondants.
1. Qu'est-ce que FileNameFilter ?
FileNameFilter est une interface qui définit la méthode accept(File dir, String name) pour filtrer les fichiers dans le répertoire. Lorsque cette méthode renvoie vrai, cela signifie que le fichier est accepté, sinon il n'est pas accepté.
2. Comment utiliser FileNameFilter pour filtrer les fichiers ?
Les étapes pour utiliser l'interface FileNameFilter pour le filtrage de fichiers sont les suivantes :
Ce qui suit est un exemple de la façon d'utiliser FileNameFilter pour filtrer des fichiers dans un répertoire spécifié :
import java.io.*; public class FileFilterExample { public static void main(String[] args) { File dir = new File("C:/folder");//指定目录 String[] fileList; //创建一个实现了FileNameFilter接口的内部类 FileNameFilterImpl filter = new FileNameFilterImpl(".txt"); //调用listFiles()方法获取目录下的所有文件 fileList = dir.list(filter); //遍历文件名数组 for (String fileName : fileList) { System.out.println(fileName); } } //实现FileNameFilter接口的内部类 static class FileNameFilterImpl implements FilenameFilter { private String ext;//扩展名 public FileNameFilterImpl(String ext) { this.ext = ext; } //实现accept()方法 public boolean accept(File dir, String name) { return name.toLowerCase().endsWith(ext);//只接受指定扩展名文件 } } }
Dans l'exemple de code ci-dessus, nous avons créé une classe interne FileNameFilterImpl qui implémente l'interface FileNameFilter. Dans la méthode accept(), nous filtrons tous les fichiers txt du répertoire spécifié en déterminant si l'extension du nom de fichier est « .txt ».
Dans la méthode main(), nous créons d'abord un objet File, représentant le répertoire C:/folder. Ensuite, nous avons créé un objet FileNameFilterImpl et l'avons passé en tant que paramètre à la méthode list() de l'objet File. La méthode list() renvoie un tableau String représentant la liste de fichiers filtrée. Enfin, nous avons utilisé une boucle for pour parcourir et afficher les noms de fichiers filtrés.
Ce qui précède est l'introduction de cet article à l'utilisation par Java de la fonction accept() de la classe FileNameFilter pour filtrer les fichiers dans le répertoire spécifié. Grâce à l'interface FileNameFilter, nous pouvons filtrer de manière flexible les fichiers que nous souhaitons en fonction de nos propres besoins. J'espère que cet article aidera les lecteurs à comprendre et à utiliser FileNameFilter.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!