Apache Commons IO - AndFileFilter

AndFileFilter bietet Bedingungen und Logik für eine Liste von Dateifiltern. Es gibt true zurück, wenn alle Filter in der Liste true zurückgeben. Andernfalls wird false zurückgegeben.

Klassenerklärung

Es folgt die Erklärung für org.apache.commons.io.filefilter.AndFileFilter Klasse -

public class AndFileFilter
   extends AbstractFileFilter implements ConditionalFileFilter, Serializable

Beispiel für die AndFileFilter-Klasse

Hier ist die Eingabedatei, die wir analysieren müssen -

Welcome to TutorialsPoint. Simply Easy Learning.

Lassen Sie uns alle Dateien und Verzeichnisse im aktuellen Verzeichnis drucken und dann eine Datei filtern, deren Name mit beginnt. und endet mit 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]);
      }
   }
}

Ausgabe

Das folgende Ergebnis wird gedruckt.

All files and Folders.

.classpath
.project
.settings
bin
input.txt
src

File starting with . or ends with t

.project