Boa tarde, pessoal.
Estou gerando um arquivo com a minha aplicação, usando o JFileChooser, mas gostaria de decidir também a extenção do arquivo na propria janela do JFileChooser, no campo “Files of type”.
Tem como eu adicionar a extenção .txt ali, pra que quando o arquivo for salvo, a extenção seja inclusa altomaticamente no nome?
Pesquisei sobre JFileFilter, mas me parece que serve apenas filtrar extenções mostradas no navegador. Estou certo?
Obrigado por toda e qualquer ajuda.
Tem cara…
Vc tem que fazer uma classe que extenda FileFilter…
assim:
public class txtFilter extends FileFilter {
/** construtor vazio da classe */
public txtFilter() {}
public boolean accept(File f) {
if (f.isDirectory()) {
return true;
}
String extension = Utils.getExtension(f);
if (extension != null) {
if (extension.equals(Utils.txt)) {
return true;
} else {
return false;
}
}
return false;
}
// a desc. dos tipos de arquivos que irão aparecer no jfilechooser
public String getDescription() {
return "*.txt";
}
//=======================================================
public class Utils {
public final static String txt = "txt";
/** Construtor vazio */
public Utils() {}
/*
* pega a extens�o do arquivo
*/
public static String getExtension(File f) {
String ext = null;
String s = f.getName();
int i = s.lastIndexOf('.');
if (i > 0 && i < s.length() - 1) {
ext = s.substring(i+1).toLowerCase();
}
return ext;
}
// no JFileChooser chame a funcao setFileFilter e passe uma instancia do seu FileFilter...
jFileChooser.setFileFilter(new txtFilter());
abraço!
8)