Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> Java

Java OutputStreamWriter-Klasse

Java OutputStreamWriter-Klasse

In diesem Tutorial lernen wir Java OutputStreamWriter und seine Methoden anhand von Beispielen kennen.

Der OutputStreamWriter Klasse der java.io Paket kann verwendet werden, um Daten in Zeichenform in Daten in Byteform umzuwandeln.

Es erweitert die abstrakte Klasse Writer .

Die OutputStreamWriter Klasse funktioniert mit anderen Ausgabeströmen. Es ist auch als Brücke zwischen Byteströmen und Zeichenströmen bekannt. Das liegt daran, dass OutputStreamWriter wandelt seine Zeichen in Bytes um.

Beispielsweise erfordern einige Zeichen, dass 2 Bytes im Speicher gespeichert werden. Um solche Daten zu schreiben, können wir den Output Stream Writer verwenden, der das Zeichen in entsprechende Bytes umwandelt und die Bytes zusammen speichert.


Erstellen Sie einen OutputStreamWriter

Um einen OutputStreamWriter zu erstellen , müssen wir den java.io.OutputStreamWriter importieren Paket zuerst. Sobald wir das Paket importiert haben, können wir hier den Output-Stream-Writer erstellen.

// Creates an OutputStream
FileOutputStream file = new FileOutputStream(String path);

// Creates an OutputStreamWriter
OutputStreamWriter output = new OutputStreamWriter(file);

Im obigen Beispiel haben wir einen OutputStreamWriter erstellt benannte Ausgabe zusammen mit dem FileOutputStream benannte Datei.

Hier verwenden wir die Standard-Zeichencodierung, um Zeichen in den Ausgabestrom zu schreiben.

Wir können jedoch die Art der Zeichenkodierung (UTF8 oder UTF16 ), um Daten zu schreiben.

// Creates an OutputStreamWriter specifying the character encoding
OutputStreamWriter output = new OutputStreamWriter(file, Charset cs);

Hier haben wir den Charset verwendet Klasse, um die Art der Zeichencodierung anzugeben.


Methoden von OutputStreamWriter

Die OutputStreamWriter -Klasse stellt Implementierungen für verschiedene Methoden bereit, die in Writer vorhanden sind Klasse.

write()-Methode


Beispiel:OutputStreamWriter zum Schreiben von Daten in eine Datei

import java.io.FileOutputStream;
import java.io.OutputStreamWriter;

public class Main {

  public static void main(String args[]) {

    String data = "This is a line of text inside the file.";

    try {
      // Creates a FileOutputStream
      FileOutputStream file = new FileOutputStream("output.txt");

      // Creates an OutputStreamWriter
      OutputStreamWriter output = new OutputStreamWriter(file);

      // Writes string to the file
      output.write(data);

      // Closes the writer
      output.close();
    }

    catch (Exception e) {
      e.getStackTrace();
    }
  }
}

Im obigen Beispiel haben wir einen Ausgabestream-Reader mit dem Dateiausgabestream erstellt. Der Output Stream Reader ist mit der output.txt verknüpft Datei.

FileOutputStream file = new FileOutputStream("output.txt");
OutputStreamWriter output = new OutputStreamWriter(file);

Um Daten in die Datei zu schreiben, haben wir den write() verwendet Methode.

Hier, wenn wir das Programm ausführen, die output.txt Datei wird mit folgendem Inhalt gefüllt.

This is a line of text inside the file.

getEncoding()-Methode

Die getEncoding() -Methode kann verwendet werden, um den Codierungstyp abzurufen, der zum Schreiben von Daten in den Ausgabestream verwendet wird. Zum Beispiel

import java.io.OutputStreamWriter;
import java.nio.charset.Charset;
import java.io.FileOutputStream;

class Main {
  public static void main(String[] args) {

    try {
      // Creates an output stream
      FileOutputStream file = new FileOutputStream("output.txt");

      // Creates an output stream reader with default encoding
      OutputStreamWriter output1 = new OutputStreamWriter(file);

      // Creates an output stream reader specifying the encoding
      OutputStreamWriter output2 = new OutputStreamWriter(file, Charset.forName("UTF8"));

      // Returns the character encoding of the output stream
      System.out.println("Character encoding of output1: " + output1.getEncoding());
      System.out.println("Character encoding of output2: " + output2.getEncoding());

      // Closes the reader
      output1.close();
      output2.close();
    }

    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

Ausgabe

The character encoding of output1: Cp1252
The character encoding of output2: UTF8

Im obigen Beispiel haben wir 2 Output-Stream-Writer mit dem Namen output1 erstellt und Ausgabe2 .

Hinweis :Wir haben den Charset.forName() verwendet Methode, um die Art der Zeichencodierung anzugeben. Um mehr zu erfahren, besuchen Sie Java Charset (offizielle Java-Dokumentation).


close()-Methode

Um den Output Stream Writer zu schließen, können wir den close() verwenden Methode. Einmal die close() -Methode aufgerufen wird, können wir den Writer nicht verwenden, um die Daten zu schreiben.


Andere Methoden von OutputStreamWriter

Methode Beschreibung
flush() erzwingt, alle im Writer vorhandenen Daten an das entsprechende Ziel zu schreiben
append() fügt das angegebene Zeichen in den aktuellen Schreiber ein

Um mehr zu erfahren, besuchen Sie Java OutputStreamWriter (offizielle Java-Dokumentation).


Java

  1. Letztes Java-Schlüsselwort
  2. Java-Instanz des Operators
  3. Java-Vererbung
  4. Verschachtelte statische Java-Klasse
  5. Anonyme Java-Klasse
  6. Java-Singleton-Klasse
  7. Java-Reflexion
  8. Java ObjectOutputStream-Klasse
  9. Java-Generika
  10. Java-Dateiklasse