Java-PrintWriter-Klasse
Java-PrintWriter-Klasse
In diesem Tutorial lernen wir Java PrintWriter und seine Methoden print() und printf() anhand von Beispielen kennen.
Der PrintWriter
Klasse der java.io
Paket kann verwendet werden, um Ausgabedaten in allgemein lesbarer Form (Text) zu schreiben.
Es erweitert die abstrakte Klasse Writer
.
Arbeitsweise von PrintWriter
Im Gegensatz zu anderen Autoren, PrintWriter
konvertiert die primitiven Daten (int
, float
, char
, usw.) in das Textformat. Dann schreibt es diese formatierten Daten in den Writer.
Auch die PrintWriter
Die Klasse löst keine Eingabe-/Ausgabeausnahme aus. Stattdessen müssen wir den checkError()
verwenden Methode, um Fehler darin zu finden.
Hinweis :Die PrintWriter
Klasse hat auch eine Funktion der automatischen Spülung. Dies bedeutet, dass der Schreiber gezwungen wird, alle Daten an das Ziel zu schreiben, wenn einer der println()
oder printf()
Methoden aufgerufen.
Erstelle einen PrintWriter
Um einen Printwriter zu erstellen, müssen wir den java.io.PrintWriter
importieren Paket zuerst. Sobald wir das Paket importiert haben, können wir hier den Print Writer erstellen.
1. Verwendung anderer Autoren
// Creates a FileWriter
FileWriter file = new FileWriter("output.txt");
// Creates a PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);
Hier,
- wir haben einen Drucker erstellt, der Daten in die Datei schreibt, die durch
FileWriter
repräsentiert wird - autoFlush ist ein optionaler Parameter, der angibt, ob eine automatische Spülung durchgeführt werden soll oder nicht
2. Verwendung anderer Ausgabeströme
// Creates a FileOutputStream
FileOutputStream file = new FileOutputStream("output.txt");
// Creates a PrintWriter
PrintWriter output = new PrintWriter(file, autoFlush);
Hier,
- Wir haben einen Drucker erstellt, der Daten in die Datei schreibt, die durch
FileOutputStream
repräsentiert wird - der autoFlush ist ein optionaler Parameter, der angibt, ob eine automatische Spülung durchgeführt werden soll oder nicht
3. Dateiname verwenden
// Creates a PrintWriter
PrintWriter output = new PrintWriter(String file, boolean autoFlush);
Hier,
- Wir haben einen Drucker erstellt, der Daten in die angegebene Datei schreibt
- der autoFlush ist ein optionaler boolescher Parameter, der angibt, ob eine automatische Leerung durchgeführt werden soll oder nicht
Hinweis :In allen oben genannten Fällen ist der PrintWriter
schreibt Daten in die Datei unter Verwendung einer Standardzeichencodierung. Wir können jedoch die Zeichenkodierung (UTF8 oder UTF16 ) ebenfalls.
// Creates a PrintWriter using some character encoding
PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs);
Hier haben wir den Charset verwendet Klasse, um die Zeichencodierung anzugeben. Um mehr zu erfahren, besuchen Sie Java Charset (offizielle Java-Dokumentation).
Methoden von PrintWriter
Die PrintWriter
Die Klasse stellt verschiedene Methoden bereit, die es uns ermöglichen, Daten in die Ausgabe zu drucken.
print()-Methode
print()
- gibt die angegebenen Daten an den Schreiber ausprintln()
- gibt die Daten zusammen mit einem neuen Zeilenzeichen am Ende an den Schreiber aus
Zum Beispiel
import java.io.PrintWriter;
class Main {
public static void main(String[] args) {
String data = "This is a text inside the file.";
try {
PrintWriter output = new PrintWriter("output.txt");
output.print(data);
output.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Im obigen Beispiel haben wir einen Drucker mit dem Namen output erstellt . Dieser Printwriter ist mit der Datei output.txt verknüpft .
PrintWriter output = new PrintWriter("output.txt");
Um Daten in die Datei zu drucken, haben wir den print()
verwendet Methode.
Hier, wenn wir das Programm ausführen, die output.txt Datei wird mit folgendem Inhalt gefüllt.
This is a text inside the file.
printf()-Methode
Der printf()
-Methode kann verwendet werden, um die formatierte Zeichenfolge zu drucken. Es enthält 2 Parameter:formatierte Zeichenfolge und Argumente. Zum Beispiel
printf("I am %d years old", 25);
Hier,
- Ich bin
%d
Jahre alt ist eine formatierte Zeichenfolge %d
sind ganzzahlige Daten in der formatierten Zeichenfolge- 25 ist ein Argument
Die formatierte Zeichenfolge enthält sowohl Text als auch Daten. Und die Argumente ersetzen die Daten innerhalb der formatierten Zeichenfolge.
Daher das %d wird durch 25 ersetzt .
Beispiel:Methode printf() mit PrintWriter
import java.io.PrintWriter;
class Main {
public static void main(String[] args) {
try {
PrintWriter output = new PrintWriter("output.txt");
int age = 25;
output.printf("I am %d years old.", age);
output.close();
}
catch(Exception e) {
e.getStackTrace();
}
}
}
Im obigen Beispiel haben wir einen Drucker mit dem Namen output erstellt . Der Druckschreiber ist mit der Datei output.txt verknüpft .
PrintWriter output = new PrintWriter("output.txt");
Um den formatierten Text in die Datei zu drucken, haben wir den printf()
verwendet Methode.
Hier, wenn wir das Programm ausführen, die output.txt Datei wird mit folgendem Inhalt gefüllt.
I am 25 years old.
Andere Methoden von PrintWriter
Methode | Beschreibung |
---|---|
close() | schließt den Druckschreiber |
checkError() | überprüft, ob es einen Fehler im Writer gibt und gibt ein boolesches Ergebnis zurück |
append() | hängt die angegebenen Daten an den Writer an |
Um mehr zu erfahren, besuchen Sie Java PrintWriter (offizielle Java-Dokumentation).
Java