Weitere aktuelle Java-Titel finden Sie bei dpunkt.
 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Klasse java.io.FilterInputStream1.0

java.lang.Object
   |
   +--java.io.InputStream
         |
         +--java.io.FilterInputStream

Deklaration

public class FilterInputStream
extends java.io.InputStream

Beschreibung

Diese Klasse bietet eine Basis für Eingabe-Streams, die die gelesenen Daten nach bestimmten Kriteriten filtern oder eine zusätzliche Funktionalität bieten. Ein FilterInputStream arbeitet grundsätzlich auf einem anderen InputStream. Zur Implementierung der gewünschten Funtionalität muß die erste und die dritte Variante der read()-Methoden überschrieben werden, die standardmäßig die Aufrufe direkt an den angeschlossenen InputStream weiterleiten. Auf dieser Basis können Pipelines aus mehreren FilterInputStreams zusammengestellt werden, wobei jeder einzelne die Daten auf seine Weise manipuliert. Hierzu wird ein Exemplar von FilterInputStream dem Konstruktor eines anderen Exemplars übergeben.


 
Datenelemente
protected InputStreamin
 
Konstruktoren
protectedFilterInputStream(InputStream in)
 
Methoden
public intavailable()
public voidclose()
public synchronized voidmark(int readlimit)
public booleanmarkSupported()
public intread()
public intread(byte[] b)
public intread(byte[] b, int off, int len)
public synchronized voidreset()
public longskip(long n)


 

Datenelemente im Detail

protected InputStream in
Der Stream, auf dem der FilterInputStream arbeitet.

 

Konstruktoren im Detail

protected FilterInputStream(InputStream in)
Erzeugt einen neuen FilterInputStream, der die Daten aus dem Stream in liest.

 

Methoden im Detail

public int available()
Liefert die Anzahl an Bytes, die momentan gelesen werden kann, ohne zu blockieren.
Exception: IOException
public void close()
Schließt den Stream.
Exception: IOException
public synchronized void mark(int readlimit)
Markiert die momentane Position im Stream. Nachfolgende Aufrufe von reset() springen danach wieder an diese Position. Hierdurch ist es möglich, dieselben Bytes mehrfach zu lesen. Die Marke verfällt wieder, nach dem readlimit Bytes aus dem Stream gelesen wurden, unabhängig davon, ob reset() aufgerufen wurde oder nicht.
public boolean markSupported()
Liefert true, wenn der darunterliegende Stream Markierung unterstützt, sonst false.
public int read()
Liest ein Byte aus dem Stream und liefert es zurück. Der Rückgabewert -1 signalisiert, dass das Ende des Streams erreicht wurde. Wenn momentan keine Daten im Stream bereitstehen, blockiert diese Methode so lange, bis wieder mindestens 1 Byte gelesen werden kann oder das Stream-Ende erreicht ist. Diese Variante muß in der Unterklasse überschrieben werden.
Exception: IOException
public int read(byte[] b)
Versucht, b.length() Bytes aus dem Stream zu lesen, und speichert sie in b. Wenn beim Versuch, das erste Byte zu lesen, das Dateiende bereits erreicht ist, ist der Rückgabewert -1, ansonsten wird die Anzahl der tatsächlich gelesenen Bytes zurückgeliefert. Wenn der Stream momentan leer ist, wartet read, bis wieder mindestens ein Byte gelesen werden kann.
Exception: IOException
public int read(byte[] b, int off, int len)
Versucht, len Bytes aus dem Stream zu lesen und speichert sie ab dem Index off in b. Wenn beim Versuch, das erste Byte zu lesen, das Stream-Ende bereits erreicht war, ist der Rückgabewert -1, ansonsten wird die Anzahl der tatsächlich gelesenen Bytes zurückgeliefert. Wenn während des Lesevorgangs das Stream-Ende erreicht wird oder wenn im darunterliegenden Stream nur weniger als len Bytes gelesen werden können, ohne zu blockieren, kehrt die Methode zurück und liefert die Anzahl der bis dahin gelesenen Bytes. Diese Variante muß in der Unterklasse überschrieben werden.
Exception: IOException
public synchronized void reset()
Springt im Stream auf die Position zurück, die mit dem letzten Aufruf von mark() gesetzt wurde.
Exception: IOException
public long skip(long n)
Versucht, n Bytes aus dem Stream zu überlesen, und liefert die Anzahl der tatsächlich übersrungenen Bytes. Diese kann kleiner als n sein, wenn vorzeitig das Ende des Streams erreicht wird. Fall momentan weniger als n Bytes im Stream bereitstehen, blockiert diese Methode so lange, bis n Bytes gelesen werden konnten oder das Stream-Ende erreicht ist.
Exception: IOException


 Inhaltsverzeichnis   Vorhergehendes Paket   Seite Zurück   Seite Vor   Nächstes Paket   Paketübersicht   Index

Copyright © 2002 dpunkt.Verlag, Heidelberg. Alle Rechte vorbehalten.