Speichern einer Zeichenkette in einer Datei in Java

Rashmi Patidar 12 Oktober 2023
  1. Schreiben einer Zeichenkette in eine Datei mit der Klasse PrintWriter in Java
  2. Schreiben Sie einen String mit der Java7-Klasse Files in eine Datei
  3. Schreiben einer Zeichenkette in eine Datei mithilfe der Klasse FileWriter in Java
Speichern einer Zeichenkette in einer Datei in Java

In diesem Artikel werden Methoden zum Schreiben einer Zeichenkette in eine Datei in Java vorgestellt.

Schreiben einer Zeichenkette in eine Datei mit der Klasse PrintWriter in Java

Um eine Zeichenkette in eine Datei zu schreiben, können wir die Klasse PrintWriter verwenden. Der Konstruktor der Klasse erstellt eine Datei mit dem angegebenen Namen als Parameter.

Der Konstruktor löst FileNotFoundException aus, wenn die Zeichenkette nicht vorhanden ist oder wenn wir die Datei nicht erstellen können oder wenn beim Öffnen oder Erstellen der Datei ein anderer Fehler auftritt.

Die Funktion println() druckt die Zeichenkette in der Datei und beendet eine Zeile.

Die Methode close() schließt den Stream und entlastet die damit verbundenen Systemressourcen.

package writeStringToFile;

import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.util.Objects;

public class WriteStringToFile {
  public static void main(String[] args) {
    PrintWriter printWriter = null;
    String textToBeWritten = "Hello";
    {
      try {
        printWriter = new PrintWriter("writerFile.txt");
      } catch (FileNotFoundException e) {
        System.out.println("Unable to locate the fileName: " + e.getMessage());
      }
      Objects.requireNonNull(printWriter).println(textToBeWritten);
      printWriter.close();
    }
  }
}

Schreiben Sie einen String mit der Java7-Klasse Files in eine Datei

Die Klasse Files besteht ausschließlich aus statischen Methoden, die mit Dateien, Verzeichnissen oder anderen Dateitypen arbeiten. Die Methode write() schreibt Bytes in eine Datei. Die Optionsparameter geben an, wie die Datei erstellt oder geöffnet wird. Wenn keine Optionen vorhanden sind, funktioniert diese Methode so, als ob die Optionen CREATE, TRUNCATE_EXISTING und WRITE bereits vorhanden sind.

Die Methode verwendet zwei Parameter, path und bytes.

Der path gibt den Pfad der Zieldatei an. Die Methode getBytes() konvertiert die Zeichenkette in das Byte-Format.

Die Methode löst IOException aus, wenn beim Schreiben oder Erstellen einer Datei ein Fehler auftritt.

package writeStringToFile;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;

public class WriteStringToFileJava7 {
  public static void main(String[] args) throws IOException {
    String contentToWrite = "Hello File!";
    String path =
        "C:\IdeaProjects\JavaProblems\src\main\java\writeStringToFile\target\targetFile.txt";
    Files.write(Paths.get(path), contentToWrite.getBytes());
  }
}

Schreiben einer Zeichenkette in eine Datei mithilfe der Klasse FileWriter in Java

Die Klasse BufferedWriter erstellt einen gepufferten Zeichenausgabestream, der einen Ausgabepuffer mit Standardgröße verwendet. Es wird jedes Writer-Objekt als Parameter verwendet. Der Klassenkonstruktor FileWriter verwendet den Dateinamen, der das Ziel zum Speichern der Zeichenkette ist. Die Methode write schreibt den Text in die zugehörige Datei im Objekt. Diese Methode löst IOException aus, wenn die Datei nicht gefunden werden kann.

Jetzt sollte man im Block finally die Ressourcen für Eingabe- und Ausgabeoperationen freigeben. Die Methode close löst die Klasse IOException weiter aus. Daher sollten wir entweder die Funktion close im try-catch-Block verwenden oder die Klausel throw in der übergeordneten Methode hinzufügen.

package writeStringToFile;

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class WriteToFileUsingFileWriter {
  public static void main(String[] args) throws IOException {
    BufferedWriter bufferedWriter = null;
    try {
      bufferedWriter = new BufferedWriter(new FileWriter("targetFile.txt"));
      bufferedWriter.write("Hey! Content to write in File");

    } catch (IOException e) {
      System.out.println("Exception occurred: " + e.getMessage());

    } finally {
      if (bufferedWriter != null)
        bufferedWriter.close();
    }
  }
}
Rashmi Patidar avatar Rashmi Patidar avatar

Rashmi is a professional Software Developer with hands on over varied tech stack. She has been working on Java, Springboot, Microservices, Typescript, MySQL, Graphql and more. She loves to spread knowledge via her writings. She is keen taking up new things and adopt in her career.

LinkedIn

Verwandter Artikel - Java String

Verwandter Artikel - Java File