Impossible écrire dans fichier

Résolu
Hr2944 Messages postés 744 Date d'inscription   Statut Membre Dernière intervention   -  
Hr2944 Messages postés 744 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour
je débute en java et j'ai un problème pour écrire dans des fichiers. Voila mon code pourtant très simple:

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class EcrireFichier {

public static void main(String[] args) throws IOException {
try{
File ff=new File("C:\\Users\\********\\Downloads\\monfichier.txt");
ff.createNewFile();
FileWriter ffw=new FileWriter(ff);
ffw.write("ca marche pas");
ffw.close();
} catch (IOException e) {}
}
}

Lorsque je l’exécute, au lieu d'écrire, ça me vide mon fichier. Quelqu'un saurait m'expliquer pourquoi ?
Merci !!!

1 réponse

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Bonjour,

    ff.createNewFile();
    créé un fichier vide, donc s'il y avait autre chose avant ça supprime.
    De plus,
    FileWriter(ff);
    est équivalent à
    FileWriter(ff, false);
    qui va effacer le fichier au début, mais si tu veux ajouter du texte à la suite, il faut faire
    FileWriter(ff, true);
    (voir FileWriter)

    public static void main(String[] args) throws Exception {
        try (FileWriter ffw = new FileWriter("C:\\Users\\********\\Downloads\\monfichier.txt", true)) {
            ffw.write("ça marche !\n");
        }
    }
    2
    1. Hr2944 Messages postés 744 Date d'inscription   Statut Membre Dernière intervention   87
       
      Merci ! (encore)
      J'avais trouvé ce code sur internet, je n'ai pas pris le temps de vérifier chaque méthode, on ne m'y reprendra plus !
      0