Maison > Java > javaDidacticiel > Comment rechercher efficacement des fichiers à l'aide de modèles génériques en Java ?

Comment rechercher efficacement des fichiers à l'aide de modèles génériques en Java ?

Barbara Streisand
Libérer: 2024-12-04 10:50:10
original
399 Les gens l'ont consulté

How to Efficiently Find Files Using Wildcard Patterns in Java?

Recherche de fichiers avec des chaînes génériques en Java

La recherche de fichiers correspondant à un modèle de caractère générique spécifique est une tâche courante en Java. Pour répondre à ce besoin, Apache commons-io fournit à la classe FileUtils des méthodes telles que listFiles et iterateFiles.

Supposons que vous ayez un modèle générique comme celui-ci :

../Test?/sample*.txt
Copier après la connexion

Pour répertorier les fichiers correspondants à l'aide de FileUtils :

File dir = new File(".");
FileFilter fileFilter = new WildcardFileFilter("sample*.java");
File[] files = dir.listFiles(fileFilter);

for (File file : files) {
    System.out.println(file);
}
Copier après la connexion

Ce code parcourt les fichiers du répertoire actuel qui correspondent au caractère générique spécifié. Cependant, pour gérer les répertoires imbriqués (par exemple les dossiers TestX), vous pouvez d'abord parcourir les répertoires :

File[] dirs = new File(".").listFiles(new WildcardFileFilter("Test*.java"));

for (File dir : dirs) {
    if (dir.isDirectory()) {
        File[] files = dir.listFiles(new WildcardFileFilter("sample*.java"));
    }
}
Copier après la connexion

Bien que cette solution soit efficace, elle peut ne pas être aussi efficace que souhaité. Pensez à utiliser un RegexFileFilter pour des critères de correspondance plus flexibles et plus complexes.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal