|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.io.InputStream
schmitzm.io.CombinedInputStream
public class CombinedInputStream
InputStream
-Instanzen liefert. Zunaechst
werden Bytes aus dem ersten Stream geliefert, wenn dieser Stream keine
Daten mehr liefern kann aus dem zweiten, usw.read()
-Methode nur noch Bytes aus einem der naechsten
Streams. Auch wenn der "leere" Stream spaeter wieder Daten liefern koennte,
werden diese nicht mehr beruecksichtigt, sondern einfach ignoriert.initFromText(InputStream)
-Methode aufrufen zu koennen,
wird aber wieder der komplette InputStream inklusive Header benoetigt.CombinedInputStream
, zusammengesetzt aus einem
neuen ByteArrayInputStream
fuer den bereits eingelesenen
Header und dem Eingabe-Stream der Datei, erzeugt werden, welcher der
initFromText(InputStream)
-Methode uebergeben wird.
Constructor Summary | |
---|---|
CombinedInputStream(InputStream[] input)
Erzeugt einen neuen CombinedInputStream . |
|
CombinedInputStream(int size)
Erzeugt einen neuen CombinedInputStream . |
Method Summary | |
---|---|
int |
available()
Liefert die gesamt Anzahl von Bytes, die in den Eingabe-Streams noch zur Verfuegung stehen. |
void |
close()
Schliesst alle Eingabe-Streams. |
int |
getStreamCount()
Liefert die Anzahl an Streams aus der der CombinedInputStream
zusammengesetzt wurde. |
int |
read()
Liefert ein (unsigned) Byte aus dem aktuellen Stream. |
void |
regenerateAvailableBytes()
Errechnet die Anzahl der insgesamt zur Verfuegung stehenden Bytes neu. |
void |
setInputStream(int i,
InputStream stream)
Setzt einen Teil-Stream. |
Methods inherited from class java.io.InputStream |
---|
mark, markSupported, read, read, reset, skip |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public CombinedInputStream(InputStream[] input) throws IOException
CombinedInputStream
.
input
- Eingabe-Streams aus denen sukzessive gelesen wird
IOException
- falls beim Ermitteln der insgesamt
zur Verfuegung stehenden Bytes ein Fehler auftrittpublic CombinedInputStream(int size)
CombinedInputStream
.
size
- Anzahl an Eingabe-Streams auf die der
CombinedInputStream
dimensioniert wirdMethod Detail |
---|
public int getStreamCount()
CombinedInputStream
zusammengesetzt wurde.
public void setInputStream(int i, InputStream stream) throws IOException
IOException
regenerateAvailableBytes()
public void regenerateAvailableBytes() throws IOException
IOException
public int available()
setInputStream(..)
). Danach wird
nach bei jedem read()
-Aufruf ein Zaehler herabgesetzt.CombinedInputStream
, sollte die Methode
regenerateAvailableBytes()
aufgerufen werden, um die Anzahl
der zur Verfuegung stehenden Bytes neu zu berechnen!!
available
in class InputStream
IOException
- falls der Zugriff auf einen der beiden
Eingabe-Streams scheitertregenerateAvailableBytes()
public int read() throws IOException
read
in class InputStream
IOException
- falls der Zugriff auf einen der
Eingabe-Streams scheitertavailable()
public void close() throws IOException
close
in interface Closeable
close
in class InputStream
IOException
- falls der Zugriff auf einen der
Eingabe-Streams scheitert
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |