Filtre JFileChooser

Signaler
Messages postés
8
Date d'inscription
mercredi 12 mars 2003
Statut
Membre
Dernière intervention
11 mai 2006
-
Messages postés
6
Date d'inscription
lundi 21 avril 2008
Statut
Membre
Dernière intervention
11 août 2009
-
salut a tous

j'ai realiser un JFileChooser et je souhaiterais y appliquer un filtre qui limiterais le choix aux fichiers gif et jpg
merci de me repondre

guyrnaf

3 réponses

Messages postés
143
Date d'inscription
vendredi 5 juillet 2002
Statut
Membre
Dernière intervention
18 mars 2006
1
Salut !

Pour utiliser un filtre dans un JFileChooser, tu dois lui indiquer ce filtre via une methode : setFileFilter !
Ton filtre sera en faite une classe perso, qui deriveras de la classe abstraite 'FileFilter', et dans laquelle, tu redefiniras les
methodes abstraites : accept() et getDescription().

Voici un bout de code en exemple, pour les fichiers .txt :

import javax.swing.filechooser.FileFilter;

public class FiltreTXT extends FileFilter {

/** indique les ficihers dont l'extension sera
acceptee */
public boolean accept(File fichier) {
if(fichier.isDirectory()) {
return true;
}

/* on a recuperer l'extension du fichier et le tester */
String nomFichier = fichier.getName();
int i = nomFichier.lastIndexOf('.');

if (i > 0 && i < nomFichier.length() - 1) {
extension = nomFichier.substring(i+1).toLowerCase();

if(extension.equals("txt"))
return true;
}

return false;
}
/** fin de accept() */

/** methode servant a decrire le filtre de fichier */
public String getDescription() {
return "Description de mes fichiers TXT";
}
/** fin de getDescription() */

}

-- NOTE : --
Pour la methode accept, tu peux utiliser l'expression suivante, qui est bien plus courte :
return fichier.getName().toLowerCase().endsWith(".txt");
Ayant teste auparavant si tu traitais un repertoire !!
-------------

Maintenant dans ton JFileChooser, tu indiques ce filtre :

JFileChooser jfc = new JFileChooser();
jfc.setFileFilter(new FiltreTXT());

Allez, a pluche ;-)
Messages postés
2
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
28 août 2009

bonjour desole mais je nais pas tout a fait compris ton flitre
je sais qui permet de faire un flitre pour le fichier txt mais
je nai pas totu a fait comprid le fait des extension .
Messages postés
6
Date d'inscription
lundi 21 avril 2008
Statut
Membre
Dernière intervention
11 août 2009

On Récupère le fichier sélectionner dans le FileChooser
On récupère son nom puis on récupère l'extension en jouant sur la chaine de caractère.

Une fois l'extension récupéré on test puis on renvoi Vrai ou Faux.

Bien pratique et utilisable partout !

Mais chez moi ça ne marche pas
Cannot Find Symbol - class File

J'ai pourtant hérité de FileFilter et importer les package. ( même plus qu'il n'en faut pour être sur mais non toujours la même erreur)

Il est ou ce "File" ?