Afficher une boite de dialogue Ouvrir un fichier avec un filtre

Par default pour afficher une boite de dialogue, on pense de suite à JFileChooser de Swing. Par contre impossible d'appliquer un filtre sous Windows. La solution est de passer par FileDialog d'awt.


import java.awt.FileDialog;
import java.awt.Frame;


 /**
     * Afficher une boite de dialogue "ouvrir un fichier"

     * @param _frame Frame ouvrant la boite de  dialogue
     * @param _title Title de la boite de dialogue
     * @param _path Répertoire initiale
     * @param _fileFilter Filtre de type *.jpg
     * @return repertoire"/"nom du fichier
     */

    public String LoadFromFile(Frame _frame, String _title, String _path, String _fileFilter) {
        FileDialog fileDialog = new FileDialog(_frame, _title, FileDialog.LOAD);
        fileDialog.setFile(_fileFilter);
        fileDialog.setDirectory(_path);
        fileDialog.setLocation(50, 50);
        fileDialog.setDirectory(_path);
        fileDialog.setVisible(true);
        return fileDialog.getDirectory() + fileDialog.getFile();
    }


    /**
     * Afficher une boite de dialogue "Enregistrer un fichier"
     * @param _frame Frame ouvrant la boite de  dialogue
     * @param _title Title de la boite de dialogue
     * @param _path Répertoire initiale
     * @param _fileFilter Filtre de type *.jpg
     * @return repertoire"/"nom du fichier
     */
    public String SaveFromFile(Frame _frame, String _title, String _path, String _fileFilter) {
        FileDialog fileDialog = new FileDialog(_frame, _title, FileDialog.SAVE);
        fileDialog.setFile(_fileFilter);
        fileDialog.setDirectory(_path);
        fileDialog.setLocation(50, 50);
        fileDialog.setDirectory(_path);
        fileDialog.setVisible(true);
        return fileDialog.getDirectory() + fileDialog.getFile();
    }


//Afficher les boites de dialogue
    System.out.print("Ouverture de:" + LoadFromFile(this, "Ouvrir un fichier ...", ".\\", "*.jpg"));
    System.out.print("enregistrement de:" + SaveFromFile(this, "Enregistrer un fichier ...", ".\\", "*.jpg"));


Ajouter un commentaire
Pseudo
Adresse email
Site internet (optionnel)
Votre commentaire
Fiche de l'article
Mise a jour23/03/2010
VisualisationVu 1975 fois
PublicInternaute zz
CategorieJAVA - Tutorial - Fichiers
Auteur de l'article
fobec fobec
connecté le 28/07/2016
41 ans - France Nord-Est
44 articles dans la section
Contacter l'auteur