Revision: 20886
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 29, 2009 22:22 by Macianer
Initial Code
import javax.swing.filechooser.FileFilter;
import java.io.File;
public class Filter extends FileFilter {
private boolean acceptDirs = true;
private String desc;
private String ext;
public Filter(String ext) {
this.ext = ext;
this.desc = ext + "-Files (" + generateExtensionString(ext) + ")";
}
public Filter(String ext, String desc) {
this.ext = ext;
this.desc = desc + " (" + generateExtensionString(ext) + ")";
}
public String getDescription() {
return desc;
}
public boolean accept(File f) {
if (f.isDirectory() && acceptDirs) {
return true;
}
if (!isMultiExtensionString(ext)) {
return f.getName().endsWith(ext);
}
String[] exts = ext.split(",");
for (int i = 0; i < exts.length; i++) {
if (f.getName().endsWith(exts[i])) {
return true;
}
}
return false;
}
protected boolean isMultiExtensionString(String ext) {
return ext.indexOf(',') >= 0;
}
protected String generateExtensionString(String ext) {
String[] exts = ext.split(",");
StringBuffer sb = new StringBuffer();
for (int i = 0; i < exts.length; i++) {
sb.append("*.");
sb.append(exts[i]);
if (i != exts.length - 1) {
sb.append(",");
}
}
return sb.toString();
}
}
Initial URL
Initial Description
Initial Title
Filter for JFileChooser
Initial Tags
Initial Language
Java