Java PrintWriter (esimerkkejä)

Tässä opetusohjelmassa opitaan Java PrintWriteristä ja sen print () - ja printf () -menetelmistä esimerkkien avulla.

PrintWriterLuokan java.iopaketti voidaan käyttää kirjoittaa lähdön datan yleisesti luettavassa muodossa (teksti).

Se laajentaa abstraktia luokkaa Writer.

PrintWriter työskentelee

Toisin kuin muut kirjoittajat, PrintWritermuuntaa primitiivinen tiedot ( int, float, char, jne.) Kautta tekstimuodossa. Sitten se kirjoittaa alustetut tiedot kirjoittajalle.

Myös PrintWriterluokka ei heitä mitään input / output poikkeus. Sen sijaan meidän on käytettävä checkError()menetelmää virheiden löytämiseen.

Huomaa : PrintWriterLuokalla on myös automaattisen huuhtelun ominaisuus. Tämä tarkoittaa, että se pakottaa kirjoittajan kirjoittamaan kaikki tiedot määränpäähän, jos jotain println()tai printf()menetelmistä kutsutaan.

Luo PrintWriter

Tulostuskirjan luomiseksi meidän on java.io.PrintWriterensin tuotava paketti. Kun tuot paketin täältä, voimme luoda tulostuskirjan.

1. Muiden kirjoittajien käyttäminen

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

Tässä,

  • Olemme luoneet tulostuskirjan, joka kirjoittaa tiedot tiedostoon, jota FileWriter
  • autoFlush on valinnainen parametri, joka määrittää, suoritetaanko automaattinen huuhtelu vai ei

2. Muiden lähtövirtojen käyttö

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

Tässä,

  • Olemme luoneet tulostuskirjan, joka kirjoittaa tiedot tiedostoon, jota FileOutputStream
  • autoFlush on valinnainen parametri, joka määrittää, suoritetaanko automaattinen huuhtelu vai ei

3. Käyttämällä tiedostonimeä

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

Tässä,

  • Olemme luoneet tulostuskirjan, joka kirjoittaa tietoja määritettyyn tiedostoon
  • autoFlush on valinnainen looginen parametri, joka määrittää, suoritetaanko automaattinen huuhtelu vai ei

Huomaa : Kaikissa yllä mainituissa tapauksissa PrintWritertiedosto kirjoittaa tiedostoon jonkin oletusmerkkikoodauksen avulla. Voimme kuitenkin määrittää myös merkkikoodauksen ( UTF8 tai UTF16 ).

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

Tässä olemme käyttäneet Charset-luokkaa merkkikoodauksen määrittämiseen. Jos haluat tietää enemmän, käy Java Charsetissa (virallinen Java-dokumentaatio).

PrintWriter-menetelmät

PrintWriterLuokka tarjoaa erilaisia menetelmiä, joiden avulla voimme tulostaa tietoja lähtöön.

tulosta () Menetelmä

  • print() - tulostaa määritetyt tiedot kirjoittajalle
  • println() - tulostaa tiedot kirjoittajalle ja uuden rivimerkin loppuun

Esimerkiksi,

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

Yllä olevassa esimerkissä olemme luoneet tulostuskirjoittajan nimeltä output. Tämä kirjoitintekijä on linkitetty tiedostoon output.txt .

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

Olemme tulostaneet tietoja tiedostoon käyttämällä print()menetelmää.

Tässä kun suoritamme ohjelmaa, output.txt- tiedosto on täytetty seuraavalla sisällöllä.

 This is a text inside the file. 

printf () -menetelmä

printf()Menetelmää voidaan käyttää tulostamaan muotoillun merkkijonon. Se sisältää 2 parametria: muotoiltu merkkijono ja argumentit. Esimerkiksi,

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

Tässä,

  • Olen %dvuotta vanha on alustettu merkkijono
  • %d on kokonaislukutiedot muotoillussa merkkijonossa
  • 25 on argumentti

Alustettu merkkijono sisältää sekä tekstiä että tietoja. Ja argumentit korvaavat alustetun merkkijonon tiedot.

Siksi % d korvataan 25: llä .

Esimerkki: menetelmä printf () käyttäen PrintWriter-ohjelmaa

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

Yllä olevassa esimerkissä olemme luoneet tulostuskirjoittajan nimeltä output. Tulostuskone on linkitetty tiedostoon output.txt .

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

Alustetun tekstin tulostamiseen tiedostoon olemme käyttäneet printf()menetelmää.

Tässä kun suoritamme ohjelmaa, output.txt- tiedosto on täytetty seuraavalla sisällöllä.

 I am 25 years old. 

Muut PrintWriter-menetelmät

Menetelmä Kuvaus
close() sulkee painetun kirjoittajan
checkError() tarkistaa, onko kirjoitimessa virhe ja palauttaa loogisen tuloksen
append() liittää määritetyt tiedot kirjoittajaan

Lisätietoja on Java PrintWriter -sivustossa (virallinen Java-dokumentaatio).

Mielenkiintoisia artikkeleita...