FilenameFilter er en grænseflade, der bruges til at filtrere filnavne, f.eks. dem, der returneres fra et opkald til et Filobjekts listFiles () – metode. Hvis listFiles () kaldes uden parametre, returnerer den alle Filobjekter i en mappe. Hvis vi passerer et filter som en parameter, kan vi selektivt returnere en delmængde af disse objekter.
oprettelse af et objekt, der implementerer FilenameFilter, kræver, at vi implementerer metoden accept(File dir, String name). Dir-objektet er filens overordnede mappe, og navnet er navnet på filen. Hvis accept () returnerer true, vil filen blive returneret i arrayet af Filobjekter fra opkaldet til listFiles (). Hvis accept () returnerer FALSK, returneres filen ikke af opkaldet til listFiles ().
tekstfilterobjektet i DirectoryContents returnerer kun true, hvis et Filobjekt slutter .TST. Som et resultat afviser det alle andre fil-og katalognavne. Bemærk, at opkaldet til f. listFiles () passerer tekstfilteret som et argument.
Direktørindhold.java
udførelse af Direktørindhold resulterer i følgende konsoloutput. Selvom andre filer og mapper er til stede i C:\projects\workspace\testing\, kun den .tekstfiler vises i resultaterne.
file:C:\projects\workspace\testing\file1.txt file:C:\projects\workspace\testing\file2.txt