Ricerca…


Sintassi

  • nuovo BufferedWriter (Writer); // Il costruttore predefinito
  • BufferedWriter.write (int c); // Scrive un singolo carattere
  • BufferedWriter.write (String str); // Scrive una stringa
  • BufferedWriter.newLine (); // Scrive un separatore di riga
  • BufferedWriter.close (); // Chiude BufferedWriter

Osservazioni

  • Se si tenta di scrivere da un BufferedWriter (usando BufferedWriter.write() ) dopo aver chiuso il BufferedWriter (usando BufferedWriter.close() ), verrà IOException .
  • Il costruttore di BufferedWriter(Writer) NON lancia IOException . Tuttavia, il costruttore FileWriter(File) genera un oggetto FileNotFoundException , che estende IOException . Quindi catturare IOException catturerà anche FileNotFoundException , non c'è mai bisogno di una seconda istruzione catch a meno che non si intenda fare qualcosa di diverso con FileNotFoundException .

Scrivi una riga di testo su File

Questo codice scrive la stringa in un file. E 'importante chiudere lo scrittore, quindi questo è fatto in un finally blocco.

  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();
      }
    }
  }

Si noti inoltre che write(String s) non inserisce caratteri di nuova riga dopo che la stringa è stata scritta. Per dirla usa il metodo newLine() .

Java SE 7

Java 7 aggiunge il pacchetto java.nio.file e try-with-resources :

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
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow