Home

IOstromen

IO-stromen, ook wel I/O-stromen genoemd, is een algemene term in de informatica voor de abstractie van input- en output-operaties. Een stroom vertegenwoordigt een opeenvolging van gegevens die in de loop van de tijd beschikbaar komt, bijvoorbeeld tekens uit een bestand, data uit een netwerkverbinding of de invoer van een gebruiker. Stromen zijn meestal onidirectioneel: een lezer leest data uit een stroom, een schrijver schrijft data naar een stroom. Ze kunnen zowel fysiek als virtueel zijn, en kunnen eindig of onbegrensd zijn.

Belangrijke kenmerken van IO-stromen zijn onder meer het onderscheid tussen byte-streams en teken-streams, buffering voor efficiëntie,

Veelgebruikte typen en implementaties variëren per programmeertaal. In Java bestaan er byte-streams (InputStream en OutputStream) en

IO-stromen zijn fundamenteel voor bestandsoperaties, netwerkcommunicatie, inter-process communicatie en real-time dataverwerking. Ze bieden een consistente interface

en
het
mogelijk
aangeven
van
het
einde
van
de
stroom
(EOF).
Ook
spelen
foutafhandeling,
blokkeren
versus
niet-blokkeren
(asynchrone)
I/O
en
encodering
een
rol.
Een
stroom
kan
gekoppeld
zijn
aan
een
bron
of
bestemming
zoals
een
bestand,
een
netwerkverbinding
of
inter-process
communicatie.
Pijplijning
van
stromen
laat
toe
om
data
via
meerdere
stappen
te
verwerken,
vaak
zonder
de
hele
inhoud
in
geheugen
te
hoeven
laden.
teken-streams
(Reader
en
Writer).
In
C++
zijn
istream
en
ostream
sleutelcomponenten
van
de
iostream-bibliotheek.
Python
maakt
gebruik
van
“file-like”
objecten
met
read
en
write,
inclusief
buffering.
Node.js
introduceert
een
rijke
set
van
Readable,
Writable
en
Transform
streams.
In
operatingsystemen
bestaan
standaardstromen
als
stdin,
stdout
en
stderr.
om
data
te
lezen
en
te
schrijven
onafhankelijk
van
de
onderliggende
bron
of
bestemming.