Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
Filtros y FileDialog
Enviado por lrn el día 12 de noviembre de 2004
Saludos, mi problema es que intento poner un filtro a un FileDialog para que me muestre solo los archivos de una extension concreta, he probado varias cosas con la clase FilenameFilter, pero no consigo lo que quiero, ¿alguien podría ayudarme?. Gracias de antemano.
Usa el método setFileFilter(FileFilter) , al que le debes pasar un FileFilter que tendrás que definir para que solo acepte los archivos que desee. un ejemplo sería:
private class FiltroDeExamen extends FileFilter {
public boolean accept(File f) {
if (f.isDirectory())
return true;
String path = f.getPath().toLowerCase();
if (path.endsWith(".jpg"))
return true;
return false;
}
public String getDescription() {
return "Formato de imagen: jpg" }
}
Gracias por responder. El caso es que ya he probado algunas cosas y se que el método para fijar un filtro de la clase FileDialog (setFilenameFilter) toma como parámetro un FilenameFilter que es un interface (FileFilter serviría para un JFileChooser), no obstante, la solución se debería parecer bastante a lo que me propones ya que FilenameFilter sólo tiene un método que es 'accept' que funciona basicamente igual. En fin, he leido por ahí que este método (setFilenameFilter) no funciona en windows, ¿es cierto o estoy haciendo algo mal?.
En windows no funciona, solo en sistemas linux y solaris, yo uso otra manera para poner filtro, aunque nomas puedo poner uno,
FileDialog dlg=new FileDialog(this,"Abrir",FileDialog.LOAD);
/*Aqui se agrega la extension que deseas */
dlg.setFile("*.txt")