Bonjour à tous,
Je cherche un moyen pour appeler la fenêtre "enregistrer sous" standard en Java.
Si quelqu'un peu me donner une indication,
Merci !!
Bonjour à tous,
Je cherche un moyen pour appeler la fenêtre "enregistrer sous" standard en Java.
Si quelqu'un peu me donner une indication,
Merci !!
Voir la classe JFileChooser :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 JFileChooser dialog = new JFileChooser(); // Mettre le filtre de type de fichier, le fichier par défaut et le répertoire en utilisant les méthodes de la classe. [...] if (dialog.showSaveDialog(parent) == JFileChooser.APPROVE_OPTION) { ... }
Merci de penser au tagquand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez mon blog sur Développez.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook
Merci,
En fait pour être plus précis, je voudrais juste faire apparaitre une fenêtre qui ( n'affiche que les répertoires ) pour me permette de sélectionner un répertoire, afin que mon appli exporte un fichier dans le répertoire concerné.
Je veux juste que la boite de dialigue me renvoi une String correspondant au chemin sélectionné afin d'ajouter cette chaine au nom de mon fichier à exporter.
Désolé, ma première question n'était pas assez précise
Merci pour vos suggestions
Il n'y a pas dans l'API de base de DirectoryChooser (helas).
Il faut soit le coder soit-meme avec un JTree, soit utiliser une lib externe contenant des controles gratuits ou payants qu'on trouve sur le net comme ceux de l2fprod (http://www.l2fprod.com/common/) ou d'autres.
Merci de penser au tagquand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.
suivez mon blog sur Développez.
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook
Bah tu fais un getSelectedFile sur ton JFileChooser, puis tu as un des constructeur de la classe file qui prend en paramètre un répertoire parent sous forme de File et un nom de fichier. Je ne vois vraiment pas où est le problème en fait.
Bonsoir,
je cherchais aussi un moyen pour sélectionner un répertoire et enregistrer dedans plusieurs fichiers
malgré que ça me parait un peu tard pour vous répondre mais peut-être que quelqu'un d'autre en aura besoin
voila ma solution:
Cordialement.
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 JFileChooser filechoose = new JFileChooser(); filechoose.setCurrentDirectory(new File(".")); /* ouvrir la boite de dialogue dans répertoire courant */ filechoose.setDialogTitle("Enregistrer tous les exemples"); /* nom de la boite de dialogue */ filechoose.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); /* pour afficher seulement les répertoires */ String approve = new String("Enregistrer"); /* Le bouton pour valider lenregistrement portera la mention Enregistrer */ int resultatEnregistrer = filechoose.showDialog(filechoose, approve); if (resultatEnregistrer == JFileChooser.APPROVE_OPTION){ /* Si lutilisateur clique sur le bouton Enregistrer */ String chemin = filechoose.getSelectedFile().getAbsolutePath()+"\\"; /* pour avoir le chemin absolu */ /* ici il faut appeler une méthode pour écrire dans un fichier dans mon exemple je l'ai nommé enregistrer_txt et son prototype c'est void enregistrer_txt(String fichier, String texte) */ enregistrer_txt(chemin+"fichier1.txt", "texte A"); enregistrer_txt(chemin+"fichier2.txt", "texte B"); enregistrer_txt(chemin+"fichier3.txt", "texte C"); // et vous pouvez enregistrer autant de fichiers que vous voulez }
Partager