Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java PrintStream-klasse: print, println en printf uitgelegd

Java PrintStream-klasse onder de knie

Deze tutorial duikt in Java's PrintStream-klasse, met creatie, kernmethoden en praktische voorbeelden.

De PrintStream-klasse, onderdeel van het java.io-pakket, breidt OutputStream uit en is ontworpen om menselijk leesbare tekst uit te voeren in plaats van rauwe bytes.

Hoe PrintStream werkt

In tegenstelling tot andere streams, converteert PrintStream primitieve waarden (int, char, etc.) naar geformatteerde tekst voordat ze naar de bestemming geschreven worden. Het gooit ook nooit IOException; fouten worden gerapporteerd via checkError().

Auto-flush is een sleutelfeature: de stream flusht automatisch wanneer:

  • een newline-karakter (\n) wordt geprint,
  • de println()-methode wordt aangeroepen, of
  • een byte-array wordt geschreven.

Een PrintStream aanmaken

Eerst de klasse importeren:

import java.io.PrintStream;

1. Vanaf een bestaande OutputStream

// Voorbeeld: wrap een FileOutputStream
FileOutputStream fos = new FileOutputStream("log.txt");
PrintStream ps = new PrintStream(fos, true); // true = autoFlush

Dit schrijft geformatteerde tekst naar log.txt met optionele auto-flushing.

2. Direct vanuit een bestandsnaam

PrintStream ps = new PrintStream("log.txt", true);

De constructor accepteert een boolean voor auto-flush. Standaard gebruikt de stream het platformkarakterencoding.

3. Een charset specificeren

PrintStream ps = new PrintStream("log.txt", true, StandardCharsets.UTF_8);

Met Charset kun je UTF-8, UTF-16 of elke ondersteunde encoding kiezen.

Let op: Voor meer details over character sets, zie de Java Charset API.

Kernmethoden van PrintStream

print() en println()

  • print(Object obj) – geeft de string-representatie van het object uit
  • println(Object obj) – voegt een platform-specifieke regel-einde toe

Voorbeeld: System.out gebruiken

public class Main {
    public static void main(String[] args) {
        System.out.print("Hello World.");
    }
}

Hier is System.out een pre-geconfigureerde PrintStream, dus de print()-methode is direct beschikbaar.

Voorbeeld: Naar een bestand schrijven

import java.io.PrintStream;

public class Main {
    public static void main(String[] args) {
        try {
            PrintStream ps = new PrintStream("output.txt");
            ps.print("Dit is een tekst in het bestand.");
            ps.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Het resulterende output.txt bevat:

Dit is een tekst in het bestand.

printf()

Print geformatteerde tekst met format-specifiers:

System.out.printf("Ik ben %d jaar oud", 25);

Hier wordt %d vervangen door de integer-waarde 25.

Voorbeeld: printf() met een bestand

import java.io.PrintStream;

public class Main {
    public static void main(String[] args) {
        try {
            PrintStream ps = new PrintStream("output.txt");
            int leeftijd = 25;
            ps.printf("Ik ben %d jaar oud.", leeftijd);
            ps.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Na uitvoering bevat output.txt:

Ik ben 25 jaar oud.

Extra PrintStream-methoden

MethodeBeschrijving
close()Sluit de stream en geeft systeembronnen vrij
checkError()Retourneert true als de stream een fout heeft tegengekomen
append()Voegt de gespecifieerde karakterreeks toe aan de stream

Voor uitgebreide details, raadpleeg de officiële Java PrintStream-documentatie.

Java

  1. Java's final-sleutelwoord begrijpen: variabelen, methoden en klassen
  2. Java instanceof operator: een uitgebreide gids
  3. Java-erfenis meesteren: concepten, typen en praktische voorbeelden
  4. Java geneste static classes begrijpen: gebruik, verschillen en voorbeelden
  5. Java anonieme inner classes meesteren: definitie, syntax en praktische voorbeelden
  6. Java Singleton patroon uitgelegd: hoe veilig te implementeren en gebruiken
  7. Java Reflectie meesteren: klassen, methoden en velden inspecteren tijdens runtime
  8. Java ArrayList meesteren: operaties, methoden en best practices
  9. Java ObjectOutputStream: Serialisatie, methoden en praktische voorbeelden
  10. Java Generics: Herbruikbare, type-veilige code bouwen
  11. Java-bestandsbewerkingen onder de knie krijgen met java.io – Aanmaken, lezen, schrijven en verwijderen