I denne opplæringen vil vi lære om Java PrintWriter og dens print () og printf () metoder ved hjelp av eksempler.
Den PrintWriterklasse av java.iopakken kan bli brukt til å skrive utgangsdata i en vanlig lesbar form (tekst).
Det utvider den abstrakte klassen Writer.

Arbeid med PrintWriter
I motsetning til andre forfattere, PrintWriteromformer de primitive data ( int, float, char, etc.) inn i tekstformat. Deretter skriver de formaterte dataene til forfatteren.
Også PrintWritergjør klassen ikke kaste noen input / output unntak. I stedet må vi bruke checkError()metoden for å finne feil i den.
Merk : PrintWriterKlassen har også en funksjon av automatisk spyling. Dette betyr at det tvinger forfatteren til å skrive alle data til destinasjonen hvis en av metodene println()eller printf()kalles.
Lag en PrintWriter
For å opprette en forfatter, må vi først importere java.io.PrintWriterpakken. Når vi først har importert pakken, kan vi opprette skriveren.
1. Bruke andre forfattere
 // Creates a FileWriter FileWriter file = new FileWriter("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush); 
Her,
- Vi har opprettet en utskriftsforfatter som vil skrive data til filen representert av 
FileWriter - autoFlush er en valgfri parameter som spesifiserer om du skal utføre automatisk spyling eller ikke
 
2. Bruke andre utgangsstrømmer
 // Creates a FileOutputStream FileOutputStream file = new FileOutputStream("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush); 
Her,
- Vi har opprettet en utskriftsforfatter som vil skrive data til filen representert av 
FileOutputStream - autoFlush er en valgfri parameter som spesifiserer om du skal utføre automatisk spyling eller ikke
 
3. Bruke filnavn
 // Creates a PrintWriter PrintWriter output = new PrintWriter(String file, boolean autoFlush); 
Her,
- Vi har opprettet en utskriftsforfatter som vil skrive data til den angitte filen
 - autoFlush er en valgfri boolsk parameter som spesifiserer om du skal utføre automatisk spyling eller heller
 
Merk : I alle de ovennevnte tilfellene PrintWriterskriver dataene til filen ved hjelp av en standard tegnkoding. Imidlertid kan vi også spesifisere tegnkodingen ( UTF8 eller UTF16 ).
 // Creates a PrintWriter using some character encoding PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs); 
Her har vi brukt Charset-klassen til å spesifisere tegnkodingen. For å vite mer, besøk Java Charset (offisiell Java-dokumentasjon).
Metoder for PrintWriter
Den PrintWriterklassen gir ulike metoder som tillater oss å skrive data til utgangen.
print () Metode
print()- skriver ut de spesifiserte dataene til forfatterenprintln()- skriver ut dataene til forfatteren sammen med et nytt strektegn på slutten
For eksempel,
 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(); ) ) ) 
I eksemplet ovenfor har vi opprettet en forfatter som heter output. Denne utskriftsforfatteren er koblet til filen output.txt .
 PrintWriter output = new PrintWriter("output.txt"); 
For å skrive ut data til filen har vi brukt print()metoden.
Når vi kjører programmet, blir output.txt- filen fylt med følgende innhold.
 This is a text inside the file. 
printf () Metode
Den printf()Fremgangsmåten kan anvendes til å skrive ut den formaterte strengen. Den inneholder to parametere: formatert streng og argumenter. For eksempel,
 printf("I am %d years old", 25); 
Her,
- Jeg er 
%dår gammel er en formatert streng %der heltallsdata i den formaterte strengen- 25 er et argument
 
Den formaterte strengen inneholder både tekst og data. Og argumentene erstatter dataene i den formaterte strengen.
Derfor erstattes % d med 25 .
Eksempel: printf () Metode ved bruk av 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(); ) ) ) 
I eksemplet ovenfor har vi opprettet en forfatter som heter output. Utskriftsforfatteren er koblet til filen output.txt .
 PrintWriter output = new PrintWriter("output.txt"); 
For å skrive ut den formaterte teksten til filen, har vi brukt printf()metoden.
Når vi kjører programmet, blir output.txt- filen fylt med følgende innhold.
 I am 25 years old.  
Andre metoder for skrivemaskin
| Metode | Beskrivelse | 
|---|---|
close() |  lukker forfatteren | 
checkError() |  sjekker om det er en feil i forfatteren og returnerer et boolsk resultat | 
append() |  legger de spesifiserte dataene til forfatteren | 
For å lære mer, besøk Java PrintWriter (offisiell Java-dokumentasjon).








