În acest tutorial, vom afla despre Java PrintWriter și metodele sale print () și printf () cu ajutorul unor exemple.
PrintWriterClasa a java.iopachetului poate fi folosit pentru a scrie datele de ieșire într - o formă care poate fi citit în mod obișnuit (text).
Extinde clasa abstractă Writer.

Funcționarea PrintWriter
Spre deosebire de alte scriitori, PrintWriterconvertește datele primitive ( int, float, charetc.) în format text. Apoi scrie acele date formatate către scriitor.
De asemenea, PrintWriterclasa nu aruncă nicio excepție de intrare / ieșire. În schimb, trebuie să folosim checkError()metoda pentru a găsi orice eroare în ea.
Notă : PrintWriterClasa are și o caracteristică de spălare automată. Aceasta înseamnă că forțează scriitorul să scrie toate datele la destinație dacă se apelează una dintre metode println()sau printf().
Creați un PrintWriter
Pentru a crea un imprimant, trebuie să importăm mai java.io.PrintWriterîntâi pachetul. Odată ce am importat pachetul, iată cum putem crea imprimantul.
1. Folosirea altor scriitori
// Creates a FileWriter FileWriter file = new FileWriter("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush);
Aici,
- am creat un imprimant care va scrie date în fișierul reprezentat de
FileWriter - autoFlush este un parametru opțional care specifică dacă se efectuează sau nu spălarea automată
2. Utilizarea altor fluxuri de ieșire
// Creates a FileOutputStream FileOutputStream file = new FileOutputStream("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush);
Aici,
- am creat un imprimant care va scrie date în fișierul reprezentat de
FileOutputStream - autoFlush este un parametru opțional care specifică dacă se efectuează sau nu spălarea automată
3. Utilizarea numelui fișierului
// Creates a PrintWriter PrintWriter output = new PrintWriter(String file, boolean autoFlush);
Aici,
- am creat un scriitor de tipărire care va scrie date în fișierul specificat
- autoFlush este un parametru boolean opțional care specifică dacă se efectuează spălarea automată sau nici
Notă : În toate cazurile de mai sus, PrintWriterdatele scrie în fișier folosind o codificare implicită a caracterelor. Cu toate acestea, putem specifica și codificarea caracterelor ( UTF8 sau UTF16 ).
// Creates a PrintWriter using some character encoding PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs);
Aici, am folosit clasa Charset pentru a specifica codificarea caracterelor. Pentru a afla mai multe, vizitați Java Charset (documentație oficială Java).
Metode de PrintWriter
PrintWriterClasa oferă diverse metode care ne permit imprimarea datelor la ieșire.
print () Metoda
print()- tipărește datele specificate scriitoruluiprintln()- imprimă datele către scriitor împreună cu un nou caracter de linie la sfârșit
De exemplu,
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(); ) ) )
În exemplul de mai sus, am creat un scriitor tipărit numit output. Acest scriitor de tipărire este legat de fișierul output.txt .
PrintWriter output = new PrintWriter("output.txt");
Pentru a imprima date în fișier, am folosit print()metoda.
Aici, când rulăm programul, fișierul output.txt este umplut cu următorul conținut.
This is a text inside the file.
printf () Metoda
printf()Metoda poate fi folosită pentru a imprima șirul de formatat. Include 2 parametri: șir formatat și argumente. De exemplu,
printf("I am %d years old", 25);
Aici,
- Am
%dani este un șir formatat %dsunt date întregi în șirul formatat- 25 este un argument
Șirul formatat include atât text, cât și date. Și argumentele înlocuiesc datele din șirul formatat.
Prin urmare, % d este înlocuit cu 25 .
Exemplu: printf () Metodă folosind 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(); ) ) )
În exemplul de mai sus, am creat un scriitor tipărit numit output. Scriitorul de imprimare este legat de fișierul output.txt .
PrintWriter output = new PrintWriter("output.txt");
Pentru a imprima textul formatat în fișier, am folosit printf()metoda.
Aici, când rulăm programul, fișierul output.txt este umplut cu următorul conținut.
I am 25 years old.
Alte metode ale PrintWriter
| Metodă | Descriere |
|---|---|
close() | închide scriitorul tipărit |
checkError() | verifică dacă există o eroare în scriitor și returnează un rezultat boolean |
append() | adaugă scriitorului datele specificate |
Pentru a afla mai multe, vizitați Java PrintWriter (documentație oficială Java).








