IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 Java Discussion :

FileFilter - filtre par nom en plus de l’extension


Sujet :

Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 265
    Par défaut FileFilter - filtre par nom en plus de l’extension
    Bonjour,

    Peut on filtrer la sélection des fichiers sur un nom, en plus de l’extension, avec un regex par exemple.

    Pour n'avoir que les fichiers dont le nom est formé uniquement par des caractères numériques. (exp: 00001.zip)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    public class Filtre extends FileFilter{
    	 private String description;
    	   private String extension;
     
    	   public Filtre(String description, String extension){
    		      if(description == null || extension ==null){
    		         throw new NullPointerException("La description (ou extension) ne peut être null.");
    		      }
    		      this.description = description;
    		      this.extension = extension;
    		   }	   
    	@Override
    	public boolean accept(File file) {
    		 if(file.isDirectory()) { 
    	         return true; 
    	      } 
    	      String nomFichier = file.getName().toLowerCase(); 
    	      return nomFichier.endsWith(extension);	      
    	}
    Merci

  2. #2
    Modérateur
    Avatar de paissad
    Homme Profil pro
    Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Inscrit en
    Avril 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur de développement (Java/JEE/Eclipse RCP,EMF & webMethods)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 043
    Par défaut
    Bonjour, si tu veux que seuls les fichiers dont le nom est de la forme 0123456.zip soient pris en compte, tu peux utiliser les regex en Java comme ceci, et ça marchera.
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
        @Override
        public boolean accept(File file) {
            if (file.isDirectory()) {
                return true;
            }
            final String nomFichier = file.getName().toLowerCase();
            final Pattern pattern = Pattern.compile("^\\d+\\." + this.extension + "$");
            final Matcher matcher = pattern.matcher(nomFichier);
            return matcher.matches();
        }
    NB: l'extension ne devrait pas contenir de point ... sinon penser à utiliser Pattern.quotes();
    Cordialement,
    Nous n'héritons pas de la terre de nos parents, nous l'empruntons à nos enfants.
    Le chat du site est aussi ici pour aider. Ne pas hésiter à visiter !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2012
    Messages : 265
    Par défaut
    Merci, cela fonctionne parfaitement !!!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Formulaire, état et filtre par nom
    Par Jigsaw80 dans le forum IHM
    Réponses: 5
    Dernier message: 01/06/2012, 11h43
  2. Envoyer plusieurs états filtrés par mail...
    Par Thierry'' dans le forum IHM
    Réponses: 8
    Dernier message: 20/09/2005, 12h02
  3. Réponses: 3
    Dernier message: 23/02/2005, 16h51
  4. Delphi7 winxp pro renvoyer un TLabel connu par nom
    Par regis1_1 dans le forum Composants VCL
    Réponses: 3
    Dernier message: 18/06/2003, 11h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo