Utilizando File.listFiles con FileNameExtensionFilter

Me gustaría obtener una lista de archivos con una extensión específica en un directorio. En la API (Java 6), veo un métodoFile.listFiles(FileFilter) que haría esto.

ado que necesito una extensión específica, creé unFileNameExtensionFilter. Sin embargo, obtengo un error de compilación cuando usolistFiles con este. Supuse que desdeFileNameExtensionFilter implements FileFilter, Debería poder hacer esto. El código sigue:

FileNameExtensionFilter filter = new FileNameExtensionFilter("text only","txt");
String dir  = "/users/blah/dirname";
File f[] = (new File(dir)).listFiles(filter);

La última línea muestra un error de compilación:

metodo listFiles (FileNameFilter) en tipo File no es aplicable para argumentos de tipo FileNameExtensionFilter

Estoy tratando de usarlistFiles(FileFilter), nolistFiles(FileNameFilter). ¿Por qué el compilador no reconoce esto?

Esto funciona si escribo mi propio filtro de extensión extendiendoFileFilter. Prefiero usarFileNameExtensionFilter que escribir el mío. ¿Qué estoy haciendo mal

Respuestas a la pregunta(6)

Su respuesta a la pregunta