Apache Commons IO - AndFileFilter
AndFileFilter fournit des conditions et une logique dans une liste de filtres de fichiers. Il renvoie true si tous les filtres de la liste retournent true. Sinon, il renvoie false.
Déclaration de classe
Voici la déclaration pour org.apache.commons.io.filefilter.AndFileFilter Classe -
public class AndFileFilter
extends AbstractFileFilter implements ConditionalFileFilter, Serializable
Exemple de classe AndFileFilter
Voici le fichier d'entrée que nous devons analyser -
Welcome to TutorialsPoint. Simply Easy Learning.
Imprimons tous les fichiers et répertoires du répertoire courant, puis filtrons un fichier dont le nom commence par. et se termine par t.
IOTester.java
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.filefilter.AndFileFilter;
import org.apache.commons.io.filefilter.PrefixFileFilter;
import org.apache.commons.io.filefilter.WildcardFileFilter;
public class IOTester {
public static void main(String[] args) {
try {
usingAndFileFilter();
} catch(IOException e) {
System.out.println(e.getMessage());
}
}
public static void usingAndFileFilter() throws IOException {
//get the current directory
File currentDirectory = new File(".");
//get names of all files and directory in current directory
String[] files = currentDirectory.list();
System.out.println("All files and Folders.\n");
for( int i = 0; i < files.length; i++ ) {
System.out.println(files[i]);
}
System.out.println("\nFile starting with . and ends with t\n");
String[] filesNames = currentDirectory.list( new AndFileFilter(
new PrefixFileFilter("."), new WildcardFileFilter("*t")));
for( int i = 0; i < filesNames.length; i++ ) {
System.out.println(filesNames[i]);
}
}
}
Production
Il imprimera le résultat suivant.
All files and Folders.
.classpath
.project
.settings
bin
input.txt
src
File starting with . or ends with t
.project