Filtre dans les JFileChoosen

Résolu
jc_romeo Messages postés 59 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 13 janvier 2006 - 16 juin 2004 à 14:32
p0236 Messages postés 54 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 25 avril 2006 - 19 nov. 2004 à 14:04
Bonjour

je voudrais faire un filtre dans les JFileChoosen et on m'a dit que je pouvais utiliser ExampleFileFilter()
néanmoins quand je le mets il me dit qu'il ne connait pas la classe.

J'ai fait les imports suivants:

import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.io.*;
import javax.swing.*;
import javax.swing.border.*;
import javax.swing.filechooser.*;
import java.util.*;

est ce que vous savez ce qu'il manque

merci beaucoup
JC

6 réponses

p0236 Messages postés 54 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 25 avril 2006
19 nov. 2004 à 14:04
C bon g la reponse :

Ca c le filtre :
/*
* Created on 16 nov. 2004
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
import java.io.File;
import java.util.Hashtable;
import java.util.Enumeration;
import javax.swing.filechooser.*;

/**
* @author Will
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class FiltreFichier extends FileFilter {
private static String TYPE_INCONNU = "Type inconnu";
private static String FICHIER_CACHE = "Fichier cache";

private Hashtable filtres = null;
private String description = null;
private String descriptionComplete = null;
private boolean useExtensionsInDescription = true;

public FiltreFichier()
{
this.filtres = new Hashtable();
}

public FiltreFichier(String extension)
{
this(extension,null);
}

public FiltreFichier(String extension, String description)
{
this();
if(extension!=null)
addExtension(extension);

if(description!=null)
setDescription(description);
}

public FiltreFichier(String[] filters)
{
this(filters, null);
}

public FiltreFichier(String[] filters, String description)
{
this();
for (int i = 0; i < filters.length; i++)
{
// add filters one by one
addExtension(filters[i]) ;
}
if(description!=null)
setDescription(description);
}

/**
* Return true if this file should be shown in the directory pane,
* false if it shouldn't.
*
* Files that begin with "." are ignored.
*
* @see #getExtension
* @see FileFilter#accepts
*/

public boolean accept(File f)
{
if(f != null)
{
if(f.isDirectory())
{
return true;
}
String extension = getExtension(f);
if(extension != null && filtres.get(getExtension(f)) != null)
{
return true;
};
}
return false;
}

public void addExtension(String extension)
{
if(filtres == null)
{
filtres = new Hashtable(5);
}
filtres.put(extension.toLowerCase(), this) ;
descriptionComplete = null;
}

/**
* Return the extension portion of the file's name .
*
* @see #getExtension
* @see FileFilter#accept
*/
public String getExtension(File f)
{
if(f != null)
{
String filename = f.getName();
int i = filename.lastIndexOf('.');
if(i>0 && i<filename.length()-1)
{
return filename.substring(i+1).toLowerCase();
}
}
return null;
}

public String getDescription()
{
if(descriptionComplete == null)
{
if(description == null || isExtensionListInDescription())
{
descriptionComplete = description==null ? "(" : description + " (";
Enumeration extensions = filtres.keys();
if(extensions != null)
{
descriptionComplete += "." + (String) extensions.nextElement();
while (extensions.hasMoreElements())
{
descriptionComplete += ", ." + (String) extensions.nextElement();
}
}
descriptionComplete += ")";
}
else
{
descriptionComplete = description;
}
}
return descriptionComplete;
}

public void setDescription(String description)
{
this.description = description;
descriptionComplete = null;

}

public void setExtensionListInDescription(boolean b)
{
useExtensionsInDescription = b;
descriptionComplete = null;
}

public boolean isExtensionListInDescription()
{
return useExtensionsInDescription;
}

}
/***********************************/
et ca c comment tu l'utilise :

private JFileChooser selecteurDossier = new JFileChooser(".") ; // si on met rien, chemin par defaut
FiltreFichier filtre = new FiltreFichier("mp3", "Fichier mp3") ; // filtre poiur les fichiers mp3

selecteurDossier.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES );// pour afficher les dossier et les fichiers

selecteurDossier.addChoosableFileFilter(filtre);

Je pense que ca peut t'aider
:big) :big) :big) :big)
3
wargre Messages postés 649 Date d'inscription mardi 8 juin 2004 Statut Membre Dernière intervention 9 septembre 2004 7
16 juin 2004 à 14:42
ExampleFileFilter connait pas mais
regarde demo/jfc/FileChooserDemo dans le rep de ton JDK
0
cs_Dobel Messages postés 333 Date d'inscription dimanche 25 mai 2003 Statut Membre Dernière intervention 23 novembre 2009 1
16 juin 2004 à 17:37
ExampleFileFilter est justement ;-p une classe de l'exemple FileChooserDemo
:big)

Dobeliou
[Qui pisse loin, ménage ses chaussures.]
0
p0236 Messages postés 54 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 25 avril 2006
16 nov. 2004 à 15:54
Tu as un reponse a ton probleme car j'ai le meme
Merci
:big) :big) :big) :big)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jc_romeo Messages postés 59 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 13 janvier 2006
17 nov. 2004 à 19:21
JC
0
jc_romeo Messages postés 59 Date d'inscription mercredi 9 juin 2004 Statut Membre Dernière intervention 13 janvier 2006
17 nov. 2004 à 19:23
DSL
je n'ai toujours pas de réponse pour cela
++
JC
0
Rejoignez-nous