Ajouter des données à un fichier

Au lieu d'écraser un fichier existant, on peut écrire à la fin de celui-ci en utilisant le bon constructeur de flux.

Aussi bien dans le cas d'un flux binaire (FileOutputStream) que d'un flux de texte (FileWriter), il suffit d'ajouter la valeur "true" comme deuxième paramètre au constructeur.

Quelques exemples :

// cas d'un fichier binaire

FileOutputStream out = new FileOutputStream("resultats.dat");
    // ici le contenu initial du fichier est remplacé par les nouvelles données
    // ...
out.close();

FileOutputStream out = new FileOutputStream("resultats.dat", true);
    // ici les données sont ajoutées au contenu initial (écrites à la fin)
    // ...
out.close();

// cas d'un fichier texte

FileWriter writer = new FileWriter("proverbes.txt");
    // ici le contenu initial du fichier est remplacé par les nouvelles données
    // ...
writer.close();

FileWriter writer = new FileWriter("proverbes.txt", true);
    // ici les données sont ajoutées au contenu initial (écrites à la fin)
    // ...
writer.close();