Boite d'enregistrement

Résolu
AmineJava Messages postés 13 Date d'inscription dimanche 14 décembre 2014 Statut Membre Dernière intervention 17 mai 2015 - Modifié par Whismeril le 16/12/2014 à 13:41
AmineJava Messages postés 13 Date d'inscription dimanche 14 décembre 2014 Statut Membre Dernière intervention 17 mai 2015 - 4 avril 2015 à 20:04
Bonjour, à tous !
j'ai le code ci-dessous, pour enregistrer un ficher dans java mais je n'arrive pas a retrouver ce fichier, si par exemple je le met dans Desktop je ne retrouve pas labas, si quelqu'un à une idée

Merci
le programme


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 l'enregistrement portera la mention Enregistrer */
int resultatEnregistrer = filechoose.showDialog(filechoose, approve); 
if (resultatEnregistrer == JFileChooser.APPROVE_OPTION){ /* Si l'utilisateur 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 
}


EDIT: Ajout de la coloration syntaxique.

1 réponse

leplutonien Messages postés 21 Date d'inscription mardi 31 juillet 2012 Statut Membre Dernière intervention 29 juin 2015
16 déc. 2014 à 14:46
Salut mon cher.
le problème se trouve à la ligne 10 :
String chemin = filechoose.getSelectedFile().getAbsolutePath()+"\\";

Pour faire simple, si ta méthode enregistrer_txt fonctionne, le fichier est crée mais pas à l'endroit spécifié. Cela est dû au séparateur de fichier que tu as mis à la fin de la méthode getAbsolutePath. Le séparateur de fichier varie d'un OS à un l'autre. C'est pourquoi java a prévu la méthode
 public static final String separator
dans la classe
java.io.File
. Donc à partir de la ligne dix fait :
 String chemin = filechoose.getSelectedFile().getAbsolutePath()+File.separator()
0
cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 11
17 déc. 2014 à 09:41
Salut,

je me permets de nuancer cette réponse...
Si ton code est exécuté sous windows, il devrait fonctionner...

Mais es-tu vraiment sure que ta méthode enregistrer_txt fonctionne bien?

Corm.
0
AmineJava Messages postés 13 Date d'inscription dimanche 14 décembre 2014 Statut Membre Dernière intervention 17 mai 2015
24 déc. 2014 à 20:36
Bonsoir,
C'est bon les gars j'ai resolu le probléme, au faite il manquait 2 anti-slash à mon code

Bonne continuation
0
leplutonien Messages postés 21 Date d'inscription mardi 31 juillet 2012 Statut Membre Dernière intervention 29 juin 2015
26 déc. 2014 à 13:49
N'oublie pas de mettre RÉSOLU au sujet.
0
AmineJava Messages postés 13 Date d'inscription dimanche 14 décembre 2014 Statut Membre Dernière intervention 17 mai 2015 > leplutonien Messages postés 21 Date d'inscription mardi 31 juillet 2012 Statut Membre Dernière intervention 29 juin 2015
4 avril 2015 à 20:04
Ok merci
0
Rejoignez-nous