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();
Neueste Kommentare
Noch keine Kommentare zu Einfach und übertragbar: Mit Java-Streams Daten lesen und schreiben
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.