pessoal, estou usando oJFILECHOOSER em meu programa e queria que no tipo de arquivo aparecesse um tipo de arquivo em particular, mas nao estou conseguindo fazer o filtro do arquivo…já tentei alguns exemplos da net mais ainda nao consegui…alguem poderia me ajudar
Em uma busca bem rapida pelo forum:
:arrow: http://www.guj.com.br/posts/list/0/27644.java#149861
:arrow: http://www.guj.com.br/posts/list/0/28226.java#152941
JÁ TENTEI MAIS NAO DEU CERTO
Dessa forma está filtrando apenas .txt e diretórios:
chooser.setFileFilter(new javax.swing.filechooser.FileFilter(){
public boolean accept(File f){
return (f.getName().endsWith(".txt")) || f.isDirectory();
}
public String getDescription(){
return "*.ret";
}
});
Quero agradecer ajuda e dizer que deu certo
muito obrigado
[quote=RRaminelli]Dessa forma está filtrando apenas .txt e diretórios:
chooser.setFileFilter(new javax.swing.filechooser.FileFilter(){
public boolean accept(File f){
return (f.getName().endsWith(".txt")) || f.isDirectory();
}
public String getDescription(){
return "*.ret";
}
});
[/quote]
Dessa forma ainda é possível selecionar outros arquivos setando a opção “Todos os arquivos”.
Como faço para não permitir que isso aconteça e ele só poder abrir a extensão que eu quero?
[quote=Heartbreaker]Dessa forma ainda é possível selecionar outros arquivos setando a opção “Todos os arquivos”.
Como faço para não permitir que isso aconteça e ele só poder abrir a extensão que eu quero?[/quote]
Consulte o Javadoc antes de perguntar:
http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/JFileChooser.html#setAcceptAllFileFilterUsed(boolean)
Desde o Java 5, há uma forma mais simples de definir um filtro para um tipo de arquivo só:
FileChooser chooser = new JFileChooser();
chooser.setFileFilter(new FileNameExtensionFilter("Image files", "bmp", "png", "jpg"));
chooser.setAcceptAllFileFilterUsed(false);
[quote=ViniGodoy][quote=Heartbreaker]Dessa forma ainda é possível selecionar outros arquivos setando a opção “Todos os arquivos”.
Como faço para não permitir que isso aconteça e ele só poder abrir a extensão que eu quero?[/quote]
Consulte o Javadoc antes de perguntar:
http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/JFileChooser.html#setAcceptAllFileFilterUsed(boolean)
Desde o Java 5, há uma forma mais simples de definir um filtro para um tipo de arquivo só:
FileChooser chooser = new JFileChooser();
chooser.setFileFilter(new FileNameExtensionFilter("Image files", "bmp", "png", "jpg"));
chooser.setAcceptAllFileFilterUsed(false);
[/quote]
Muito obrigado. Preciso pegar mais o costume de olhar na documentação mas acho dificil entender por lá.
E como faço pra quando for salvar, ele automaticamente salvar na extensão que eu quero?
Tentei usar do mesmo modo mas não deu.
PS: eu procurei no javadoc mas não encontrei.
Isso ele não faz sozinho.
Insira você mesmo a extensão:
[code]FileChooser chooser = new JFileChooser();
chooser.setFileFilter(new FileNameExtensionFilter(“Image files”, “bmp”, “png”, “jpg”));
chooser.setAcceptAllFileFilterUsed(false);
if (chooser.showSaveDialog(null) != JFileChooser.APPROVE_OPTION)
return;
File file = chooser.getSelectedFile();
if (!file.getAbsolutePath().endsWith(".png"))
file = new File(file.getAbsolutePath() + “.png”);
[/code]