Apache Commons IO - OrFileFilter
OrFileFilter fornisce logica OR condizionale in un elenco di filtri di file. Restituisce true, se qualsiasi filtro nell'elenco restituisce true. In caso contrario, restituisce false.
Dichiarazione di classe
Di seguito è riportata la dichiarazione per org.apache.commons.io.filefilter.OrFileFilter Classe -
public class OrFileFilter
extends AbstractFileFilter implements ConditionalFileFilter, Serializable
Esempio di classe OrFileFilter
Ecco il file di input che dobbiamo analizzare:
Welcome to TutorialsPoint. Simply Easy Learning.
Stampiamo tutti i file e le directory nella directory corrente e quindi filtriamo un file il cui nome inizia con. o termina con t.
IOTester.java
import java.io.File;
import java.io.IOException;
import org.apache.commons.io.filefilter.OrFileFilter;
import org.apache.commons.io.filefilter.PrefixFileFilter;
import org.apache.commons.io.filefilter.WildcardFileFilter;
public class IOTester {
public static void main(String[] args) {
try {
usingOrFileFilter();
} catch(IOException e) {
System.out.println(e.getMessage());
}
}
public static void usingOrFileFilter() 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 . or ends with t\n");
String[] filesNames = currentDirectory.list( new OrFileFilter(new PrefixFileFilter("."), new WildcardFileFilter("*t")));
for( int i = 0; i < filesNames.length; i++ ) {
System.out.println(filesNames[i]);
}
}
}
Produzione
Stamperà il seguente risultato.
All files and Folders.
.classpath
.project
.settings
bin
input.txt
src
File starting with . or ends with t
.classpath
.project
.settings
input.txt