Generic File Filter
import java.io.File; import javax.swing.filechooser.FileFilter; public class GenericFileFilter extends FileFilter { private String[] fileExts; private String description; private String extension; public GenericFileFilter(String[] filesExtsIn, String description) { fileExts = filesExtsIn; this.description = description; } public boolean accept(File f) { if (f.isDirectory()) { return true; } extension = getExtension(f); if (extension != null) { for (int i = 0; i < fileExts.length; i++) { if (check(fileExts[i])) return true; } } return false; } private boolean check(String in) { return extension.equalsIgnoreCase(in); } public String getDescription() { return description; } private String getExtension(File file) { String filename = file.getName(); int length = filename.length(); int i = filename.lastIndexOf('.'); if (i > 0 && i < length - 1) return filename.substring(i + 1).toLowerCase(); return null; } }