Normalerweise wird automatisch ein Input-Stream geöffnet, wenn er vom entsprechenden Datenquellenobjekt abgerufen wird oder wenn man eines der Reader-Objekte erzeugt. Um beispielsweise den Input-Stream für eine Datei zu öffnen, übergibt man einfach den Namen der Datei wie folgt an den Konstruktor des java.io.FileReader-Objekts:
Um das nächste verfügbare Byte aus dem einem FileReader zugrundeliegenden Input-Stream zu lesen, verwendet man einfach die read-Methode ohne Parameter. Der Codeausschnitt in Listing A liest Text aus einer Datei, Zeichen für Zeichen, und schreibt ihn an System.out.
Listing A
Um eine bestimmte Anzahl von Bytes aus einem Input-Stream in ein char-Array einzulesen, verwendet man die read-Methode mit einem char[]-Parameter. Dabei wird die Länge des Arrays benutzt, um die Anzahl der zu lesenden Zeichen zu bestimmen. Listing B demonstriert diese Technik.
Listing B
Mit der Methode close wird der Input-Stream geschlossen. Damit sind die von ihm beanspruchten Systemressourcen wieder frei.
fileReader.close();
Daten schreiben
Ebenso wie ein Input-Stream wird auch ein Output-Stream normalerweise automatisch geöffnet, wenn er vom entsprechenden Datenquellenobjekt abgerufen wird oder wenn man eines der Writer-Objekte erzeugt. Um etwa den Output-Stream einer Datei zu öffnen, übergibt man einfach den Namen der Datei wie folgt an den Konstruktor des java.io.FileWriter-Objekts:
Zum Schreiben eines bestimmten Zeichens in einen Output-Stream, lässt sich die write-Methode mit einem int-Parameter anwenden. Der int-Parameter stellt das zu schreibende Zeichen dar.
int aChar = (int)'X';
fileWriter.write(aChar);
Um eine bestimmte Anzahl von Bytes ab einem gegebenen Offset von einem festgelegten char-Array in einen Output-Stream zu schreiben, braucht man die write-Methode mit einem char[]-Parameter, einem int-Parameter für den Offset sowie einem weiteren int-Parameter für die Länge, wie das folgende Beispiel zeigt:
fileWriter.write(buffer, 0, byteCount);
Damit ein Output-Stream geschlossen werden kann und die von ihm beanspruchten Systemressourcen wieder frei werden, benutzt man die Methode close:
fileWriter.close();
Alle zwischengespeicherten Daten eines Output-Streams werden gelöscht, wenn man die flush-Methode folgendermaßen verwendet:
fileWriter.flush();
Eine schwerwiegende Anfälligkeit hebelt die Sicherheitsfunktion Seitenisolierung auf. Betroffen sind Chrome für Windows, macOS und…
DeepL Voice ermöglicht Live‑Übersetzung von Meetings und Gesprächen in 13 Sprachen.
Betroffen sind Windows und Windows Server. Microsoft patcht aber auch Schwachstellen in Excel, Word und…
Es lässt sich um bis zu 50 Prozent dehnen. Allerdings besitzt es eine deutliche geringere…
Allerdings nimmt auch die Resilienz gegenüber Cyberattacken zu. Das BSI hat außerdem die Cybersicherheit anstehender…
Es ist das größte Wachstum in einem Jahr seit 2021. Unter anderem lässt das Interesse…