Java PrintWriter (s primjerima)

U ovom uputstvu uz primjere ćemo naučiti o Java PrintWriteru i njegovim metodama print () i printf ().

PrintWriterRazred java.iopaket se može koristiti za pisanje izlaznih podataka u najčešće čitljivom obliku (tekst).

Proširuje apstraktnu klasu Writer.

Rad PrintWriter-a

Za razliku od drugih pisaca, PrintWriterpretvara primitivne podataka ( int, float, char, itd) u obliku teksta. Zatim zapisuje te formatirane podatke.

Također, PrintWriterklasa ne izuzima nikakvu ulazno / izlaznu iznimku. Umjesto toga, trebamo koristiti checkError()metodu kako bismo pronašli bilo kakvu pogrešku u njoj.

Napomena : PrintWriterKlasa također ima značajku automatskog ispiranja. To znači da prisiljava pisca da upiše sve podatke na odredište ako je pozvana jedna od metoda println()ili printf().

Stvorite PrintWriter

Da bismo stvorili program za ispis, prvo moramo uvesti java.io.PrintWriterpaket. Jednom kada uvozimo paket, evo kako možemo stvoriti pisač za ispis.

1. Korištenje drugih pisaca

 // Creates a FileWriter FileWriter file = new FileWriter("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush); 

Ovdje,

  • stvorili smo program za ispis koji će upisivati ​​podatke u datoteku koju predstavlja FileWriter
  • autoFlush je neobavezni parametar koji određuje treba li izvršiti automatsko ispiranje ili ne

2. Korištenje ostalih izlaznih tokova

 // Creates a FileOutputStream FileOutputStream file = new FileOutputStream("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush); 

Ovdje,

  • stvorili smo program za ispis koji će upisivati ​​podatke u datoteku koju predstavlja FileOutputStream
  • autoFlush je neobavezni parametar koji određuje treba li izvršiti automatsko ispiranje ili ne

3. Korištenje naziva datoteke

 // Creates a PrintWriter PrintWriter output = new PrintWriter(String file, boolean autoFlush); 

Ovdje,

  • stvorili smo program za ispis koji će zapisati podatke u navedenu datoteku
  • autoFlush je neobavezni logički parametar koji određuje treba li izvršiti automatsko ispiranje ili

Napomena : U svim gore navedenim slučajevima PrintWriterzapisuje podatke u datoteku koristeći neko zadano kodiranje znakova. Međutim, možemo odrediti i kodiranje znakova ( UTF8 ili UTF16 ).

 // Creates a PrintWriter using some character encoding PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs); 

Ovdje smo koristili klasu Charset da odredimo kodiranje znakova. Da biste saznali više, posjetite Java Charset (službena Java dokumentacija).

Metode PrintWriter-a

PrintWriterKlasa pruža razne metode koje nam omogućuju ispis podataka na izlaz.

print () Metoda

  • print() - ispisuje navedene podatke na pisač
  • println() - ispisuje podatke na pisač zajedno s novim znakom na kraju

Na primjer,

 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(); ) ) ) 

U gornjem primjeru stvorili smo program za ispis koji se zove output. Ovaj pisač ispisa povezan je s datotekom output.txt .

 PrintWriter output = new PrintWriter("output.txt"); 

Za ispis podataka u datoteku koristili smo print()metodu.

Ovdje kada pokrenemo program, datoteka output.txt puni se sljedećim sadržajem.

 This is a text inside the file. 

metoda printf ()

printf()Metoda može se koristiti za ispis oblikovanog niza. Sadrži 2 parametra: formatirani niz i argumenti. Na primjer,

 printf("I am %d years old", 25); 

Ovdje,

  • Imam %dgodine formatiran je niz
  • %d je cjelobrojni podatak u formatiranom nizu
  • 25 je argument

Formatirani niz uključuje i tekst i podatke. A, argumenti zamjenjuju podatke unutar formatiranog niza.

Stoga se % d zamjenjuje s 25 .

Primjer: metoda printf () pomoću 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(); ) ) ) 

U gornjem primjeru stvorili smo program za ispis koji se zove output. Pisač ispisa povezan je s datotekom output.txt .

 PrintWriter output = new PrintWriter("output.txt"); 

Za ispis oblikovanog teksta u datoteku koristili smo printf()metodu.

Ovdje kada pokrenemo program, datoteka output.txt puni se sljedećim sadržajem.

 I am 25 years old. 

Ostale metode PrintWriter-a

Metoda Opis
close() zatvara pisač tiska
checkError() provjerava postoji li pogreška u zapisu i vraća logički rezultat
append() dodaje navedene podatke piscu

Da biste saznali više, posjetite Java PrintWriter (službena Java dokumentacija).

Zanimljivi članci...