Recherche…


Syntaxe

  • nouveau BufferedWriter (Writer); // Le constructeur par défaut
  • BufferedWriter.write (int c); // écrit un seul caractère
  • BufferedWriter.write (String str); // écrit une chaîne
  • BufferedWriter.newLine (); // écrit un séparateur de ligne
  • BufferedWriter.close (); // ferme le BufferedWriter

Remarques

  • Si vous essayez d'écrire à partir d'un BufferedWriter (en utilisant BufferedWriter.write() ) après la fermeture de BufferedWriter (en utilisant BufferedWriter.close() ), une IOException sera lancée.
  • Le constructeur BufferedWriter(Writer) ne lance PAS une IOException . Cependant, le constructeur FileWriter(File) lève une FileNotFoundException , qui étend IOException . FileNotFoundException IOException interceptera donc FileNotFoundException , il n'y a jamais besoin d'une seconde instruction catch sauf si vous envisagez de faire quelque chose de différent avec FileNotFoundException .

Ecrire une ligne de texte dans File

Ce code écrit la chaîne dans un fichier. Il est important de fermer le graveur, cela se fait donc dans un bloc finally .

  public void writeLineToFile(String str) throws IOException {
    File file = new File("file.txt");
    BufferedWriter bw = null;
    try {
      bw = new BufferedWriter(new FileWriter(file));
      bw.write(str);
    } finally {
      if (bw != null) {
        bw.close();
      }
    }
  }

Notez également que write(String s) ne place pas de caractère de nouvelle ligne après l’écriture de la chaîne. Pour le mettre, utilisez la méthode newLine() .

Java SE 7

Java 7 ajoute le package java.nio.file et essaie avec :

public void writeLineToFile(String str) throws IOException {
    Path path = Paths.get("file.txt");
    try (BufferedWriter bw = Files.newBufferedWriter(path)) {
        bw.write(str);
    }
}


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow