Sobes.tech
Middle

V čom spočíva rozdiel medzi triedami PrintWriter a PrintStream?

sobes.tech AI

Odpoveď od AI

PrintWriter a PrintStream sú triedy na výstup dát, ale s rôznymi vlastnosťami:

  • PrintStream pracuje s bajtovými tokmi (OutputStream), zatiaľ čo PrintWriter s znakmi (Writer).
  • PrintWriter podporuje špecifikáciu kódovania, čo je dôležité pre správnu prácu s textom v rôznych jazykoch.
  • PrintWriter má metódy na automatické vyprázdnenie bufferu (autoFlush) pri volaní println, printf a format.
  • PrintStream priamo nepodporuje prácu s kódovaniami a je zastaraný pre textový výstup.

Príklad vytvorenia PrintWriter s určením kódovania:

PrintWriter writer = new PrintWriter(new OutputStreamWriter(System.out, StandardCharsets.UTF_8), true);
writer.println("Príklad výstupu s PrintWriter");

Preto je vhodnejšie použiť PrintWriter pre textový výstup, najmä ak je dôležité kódovanie.