java.lang.Objectjava.io.InputStream
java.io.FilterInputStream
java.util.zip.DeflaterInputStream
public class DeflaterInputStream
Implements an input stream filter for compressing data in the "deflate" compression format.
DeflaterOutputStream
,
InflaterOutputStream
,
InflaterInputStream
Field Summary | |
---|---|
protected byte[] |
buf
Input buffer for reading compressed data. |
protected Deflater |
def
Compressor for this stream. |
Fields inherited from class java.io.FilterInputStream |
---|
in |
Constructor Summary | |
---|---|
DeflaterInputStream(InputStream in)
Creates a new input stream with a default compressor and buffer size. |
|
DeflaterInputStream(InputStream in,
Deflater defl)
Creates a new input stream with the specified compressor and a default buffer size. |
|
DeflaterInputStream(InputStream in,
Deflater defl,
int bufLen)
Creates a new input stream with the specified compressor and buffer size. |
Method Summary | |
---|---|
int |
available()
Returns 0 after EOF has been reached, otherwise always return 1. |
void |
close()
Closes this input stream and its underlying input stream, discarding any pending uncompressed data. |
void |
mark(int limit)
This operation is not supported. |
boolean |
markSupported()
Always returns false because this input stream does not support
the mark() and reset() methods. |
int |
read()
Reads a single byte of compressed data from the input stream. |
int |
read(byte[] b,
int off,
int len)
Reads compressed data into a byte array. |
void |
reset()
This operation is not supported. |
long |
skip(long n)
Skips over and discards data from the input stream. |
Methods inherited from class java.io.FilterInputStream |
---|
read |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final Deflater def
protected final byte[] buf
Constructor Detail |
---|
public DeflaterInputStream(InputStream in)
in
- input stream to read the uncompressed data to
NullPointerException
- if in
is nullpublic DeflaterInputStream(InputStream in, Deflater defl)
in
- input stream to read the uncompressed data todefl
- compressor ("deflater") for this stream
NullPointerException
- if in
or defl
is nullpublic DeflaterInputStream(InputStream in, Deflater defl, int bufLen)
in
- input stream to read the uncompressed data todefl
- compressor ("deflater") for this streambufLen
- compression buffer size
IllegalArgumentException
- if bufLen
is <= 0
NullPointerException
- if in
or defl
is nullMethod Detail |
---|
public void close() throws IOException
close
in interface Closeable
close
in class FilterInputStream
IOException
- if an I/O error occursFilterInputStream.in
public int read() throws IOException
read
in class FilterInputStream
IOException
- if an I/O error occurs or if this stream is
already closedFilterInputStream.in
public int read(byte[] b, int off, int len) throws IOException
read
in class FilterInputStream
b
- buffer into which the data is readoff
- starting offset of the data within b
len
- maximum number of compressed bytes to read into b
IndexOutOfBoundsException
- if len
> b.length -
off
IOException
- if an I/O error occurs or if this input stream is
already closedFilterInputStream.in
public long skip(long n) throws IOException
n
is given as a long
,
the maximum number of bytes which can be skipped is
Integer.MAX_VALUE
.
skip
in class FilterInputStream
n
- number of bytes to be skipped
IOException
- if an I/O error occurs or if this stream is
already closedpublic int available() throws IOException
Programs should not count on this method to return the actual number of bytes that could be read without blocking
available
in class FilterInputStream
IOException
- if an I/O error occurs or if this stream is
already closedpublic boolean markSupported()
false
because this input stream does not support
the mark()
and reset()
methods.
markSupported
in class FilterInputStream
FilterInputStream.in
,
InputStream.mark(int)
,
InputStream.reset()
public void mark(int limit)
mark
in class FilterInputStream
limit
- maximum bytes that can be read before invalidating the position markerFilterInputStream.in
,
FilterInputStream.reset()
public void reset() throws IOException
reset
in class FilterInputStream
IOException
- always thrownFilterInputStream.in
,
FilterInputStream.mark(int)