Java OutputStream: Kernconcepten, methoden en praktisch bestandvoorbeelden
Java OutputStream-klasse
Ontdek de fundamenten van Java's OutputStream, de primaire methoden en een hands-on voorbeeld met FileOutputStream.
De OutputStream-klasse, gelegen in het java.io-pakket, is een abstracte superklasse die een stroom bytes vertegenwoordigt bestemd voor een uitvoerbestand. Omdat het abstract is, kun je het niet direct instantiëren; je vertrouwt op de concrete subklassen voor daadwerkelijke I/O-operaties.
Belangrijkste subklassen van OutputStream
Hieronder de meest gebruikte subklassen die OutputStream uitbreiden:
FileOutputStream– schrijft bytes direct naar een bestandByteArrayOutputStream– vangt bytes op in een uitbreidbare array, nuttig voor in-memory operatiesObjectOutputStream– serialiseert Java-objecten naar een bytestream
Een OutputStream-instantie aanmaken
Om een instantie van een OutputStream aan te maken, importeer het pakket en instantiëer een concrete subklasse:
// Instantieer een FileOutputStream
OutputStream out = new FileOutputStream("voorbeeld.txt");
Omdat OutputStream abstract is, moet je altijd een subklasse gebruiken. Het voorbeeld hierboven toont het aanmaken van een stream die schrijft naar voorbeeld.txt.
Tip: Je kunt FileOutputStream vervangen door elke andere subklasse (bijv. ByteArrayOutputStream) om een andere bestemming te targeten.
Kernmethoden van OutputStream
De abstracte klasse declareert verschillende essentiële methoden die de subklassen moeten implementeren:
write(int b)– schrijft een enkele byte naar de streamwrite(byte[] b)– schrijft een volledige byte-arrayflush()– dwingt gebufferde data om geschreven te wordenclose()– geeft systeembronnen vrij die aan de stream gekoppeld zijn
Voorbeeld: Tekst naar een bestand schrijven met FileOutputStream
Hieronder een compleet, klaar-om-te-draaien programma dat een regel tekst schrijft naar output.txt met FileOutputStream:
import java.io.FileOutputStream;
import java.io.OutputStream;
public class Main {
public static void main(String[] args) {
String data = "Dit is een regel tekst in het bestand.";
try (OutputStream out = new FileOutputStream("output.txt")) {
byte[] dataBytes = data.getBytes();
out.write(dataBytes);
System.out.println("Data geschreven naar output.txt");
} catch (Exception e) {
e.printStackTrace();
}
}
}
Belangrijke punten die gedemonstreerd worden:
- Conversie van een
Stringnaar een byte-array metgetBytes() - Schrijven van de byte-array naar de stream via
write() - Automatische stream-sluiting via een try-with-resources-blok, wat
close()voor je aanroept
Na uitvoering bevat output.txt:
Dit is een regel tekst in het bestand.
Voor diepere verkenning van OutputStream, raadpleeg de officiële Java-documentatie: Java OutputStream (officiële Java-documentatie).
Java
- Java's final-sleutelwoord begrijpen: variabelen, methoden en klassen
- Java instanceof operator: een uitgebreide gids
- Java-erfenis meesteren: concepten, typen en praktische voorbeelden
- Java geneste static classes begrijpen: gebruik, verschillen en voorbeelden
- Java anonieme inner classes meesteren: definitie, syntax en praktische voorbeelden
- Java Singleton patroon uitgelegd: hoe veilig te implementeren en gebruiken
- Java Reflectie meesteren: klassen, methoden en velden inspecteren tijdens runtime
- Java ArrayList meesteren: operaties, methoden en best practices
- Java ObjectOutputStream: Serialisatie, methoden en praktische voorbeelden
- Java Generics: Herbruikbare, type-veilige code bouwen
- Java-bestandsbewerkingen onder de knie krijgen met java.io – Aanmaken, lezen, schrijven en verwijderen