Selles õpetuses õpime näidete abil Java PrintWriterit ning selle print () ja printf () meetodeid.
PrintWriter
Klassi java.io
pakett saab kasutada kirjutada väljundandmed tavaliselt kujul (tekst).
See laiendab abstraktset klassi Writer
.
PrintWriteri töö
Erinevalt teistest kirjanikud, PrintWriter
teisendab primitiivne andmed ( int
, float
, char
jne) sisse tekstina. Seejärel kirjutab see vormindatud andmed kirjanikule.
Samuti PrintWriter
ei viska klass ühtegi sisendi / väljundi erandit. Selle asemel peame checkError()
selle vea leidmiseks kasutama meetodit.
Märkus : PrintWriter
klassil on ka automaatse loputamise funktsioon. See tähendab, et see sunnib kirjutajat kirjutama kõik andmed sihtkohta, kui kutsutakse ühte meetoditest println()
või printf()
.
Looge PrintWriter
Prindikirjutaja loomiseks peame java.io.PrintWriter
esmalt pakendi importima . Kui pakett on siia imporditud, saame printeri kirjutaja luua.
1. Teiste kirjanike kasutamine
// Creates a FileWriter FileWriter file = new FileWriter("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush);
Siin,
- oleme loonud trükikirjutaja, mis kirjutab andmed faili, mida tähistab
FileWriter
- autoFlush on valikuline parameeter, mis määrab, kas teha automaatne loputus või mitte
2. Muude väljundvoogude kasutamine
// Creates a FileOutputStream FileOutputStream file = new FileOutputStream("output.txt"); // Creates a PrintWriter PrintWriter output = new PrintWriter(file, autoFlush);
Siin,
- oleme loonud trükikirjutaja, mis kirjutab andmed faili, mida tähistab
FileOutputStream
- autoFlush on valikuline parameeter, mis määrab, kas teha automaatne loputus või mitte
3. Failinime kasutamine
// Creates a PrintWriter PrintWriter output = new PrintWriter(String file, boolean autoFlush);
Siin,
- oleme loonud prindikirjutaja, mis kirjutab andmed määratud faili
- autoFlush on valikuline tõeväärtuse parameeter, mis määrab, kas teha automaatne loputus või mitte
Märkus . Kõigil ülaltoodud juhtudel PrintWriter
kirjutab andmed faili mõne vaikimisi märgikodeeringu abil. Kuid saame määrata ka märkide kodeeringu ( UTF8 või UTF16 ).
// Creates a PrintWriter using some character encoding PrintWriter output = new PrintWriter(String file, boolean autoFlush, Charset cs);
Siin oleme märkide kodeerimise määramiseks kasutanud klassi Charset. Lisateabe saamiseks külastage Java Charset (ametlik Java dokumentatsioon).
PrintWriteri meetodid
PrintWriter
Klassi pakub erinevaid meetodeid, mis võimaldavad meil printida andmeid väljund.
print () meetod
print()
- prindib määratud andmed kirjutajaleprintln()
- prindib andmed kirjutajale koos uue reamärgiga
Näiteks,
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(); ) ) )
Ülaltoodud näites oleme loonud trükikirjutaja nimega väljund. See trükikirjutaja on lingitud failiga output.txt .
PrintWriter output = new PrintWriter("output.txt");
Andmete faili printimiseks oleme kasutanud print()
meetodit.
Siin on programmi käivitamisel fail output.txt täidetud järgmise sisuga.
This is a text inside the file.
printf () meetod
printf()
Meetodit saab kasutada printida vormindatud stringi. See sisaldab 2 parameetrit: vormindatud string ja argumendid. Näiteks,
printf("I am %d years old", 25);
Siin,
- Olen
%d
aastat vana on vormindatud string %d
on täisarvandmed vormindatud stringis- 25 on argument
Vormindatud string sisaldab nii teksti kui ka andmeid. Ja argumendid asendavad vormindatud stringis olevad andmed.
Seetõttu asendatakse % d arvuga 25 .
Näide: meetod printf () PrintWriteri abil
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(); ) ) )
Ülaltoodud näites oleme loonud trükikirjutaja nimega väljund. Prindikirjutaja on lingitud failiga output.txt .
PrintWriter output = new PrintWriter("output.txt");
Vormindatud teksti faili printimiseks oleme kasutanud printf()
meetodit.
Siin on programmi käivitamisel fail output.txt täidetud järgmise sisuga.
I am 25 years old.
Muud PrintWriteri meetodid
Meetod | Kirjeldus |
---|---|
close() | sulgeb trükikirjaniku |
checkError() | kontrollib, kas kirjutajal on viga, ja tagastab tõeväärtuse tulemuse |
append() | lisab määratud andmed kirjutajale |
Lisateabe saamiseks külastage Java PrintWriterit (ametlik Java dokumentatsioon).