DeflaterInputStream
public
class
DeflaterInputStream
extends FilterInputStream
java.lang.Object | |||
↳ | java.io.InputStream | ||
↳ | java.io.FilterInputStream | ||
↳ | java.util.zip.DeflaterInputStream |
Implements an input stream filter for compressing data in the "deflate" compression format.
Summary
Fields | |
---|---|
protected
final
byte[] |
buf
Input buffer for reading compressed data. |
protected
final
Deflater |
def
Compressor for this stream. |
Inherited fields |
---|
Public constructors | |
---|---|
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. |
Public methods | |
---|---|
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 |
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. |
Inherited methods | |
---|---|
Fields
Public constructors
DeflaterInputStream
public DeflaterInputStream (InputStream in)
Creates a new input stream with a default compressor and buffer size.
Parameters | |
---|---|
in |
InputStream : input stream to read the uncompressed data to |
Throws | |
---|---|
NullPointerException |
if in is null |
DeflaterInputStream
public DeflaterInputStream (InputStream in, Deflater defl)
Creates a new input stream with the specified compressor and a default buffer size.
Parameters | |
---|---|
in |
InputStream : input stream to read the uncompressed data to |
defl |
Deflater : compressor ("deflater") for this stream |
Throws | |
---|---|
NullPointerException |
if in or defl is null |
DeflaterInputStream
public DeflaterInputStream (InputStream in, Deflater defl, int bufLen)
Creates a new input stream with the specified compressor and buffer size.
Parameters | |
---|---|
in |
InputStream : input stream to read the uncompressed data to |
defl |
Deflater : compressor ("deflater") for this stream |
bufLen |
int : compression buffer size |
Throws | |
---|---|
IllegalArgumentException |
if bufLen <= 0 |
NullPointerException |
if in or defl is null |
Public methods
available
public int available ()
Returns 0 after EOF has been reached, otherwise always return 1.
Programs should not count on this method to return the actual number of bytes that could be read without blocking
Returns | |
---|---|
int |
zero after the end of the underlying input stream has been reached, otherwise always returns 1 |
Throws | |
---|---|
IOException |
if an I/O error occurs or if this stream is already closed |
close
public void close ()
Closes this input stream and its underlying input stream, discarding any pending uncompressed data.
Throws | |
---|---|
IOException |
if an I/O error occurs |
mark
public void mark (int limit)
This operation is not supported.
Parameters | |
---|---|
limit |
int : maximum bytes that can be read before invalidating the position marker |
markSupported
public boolean markSupported ()
Always returns false
because this input stream does not support
the mark()
and reset()
methods.
Returns | |
---|---|
boolean |
false, always |
read
public int read ()
Reads a single byte of compressed data from the input stream. This method will block until some input can be read and compressed.
Returns | |
---|---|
int |
a single byte of compressed data, or -1 if the end of the uncompressed input stream is reached |
Throws | |
---|---|
IOException |
if an I/O error occurs or if this stream is already closed |
read
public int read (byte[] b, int off, int len)
Reads compressed data into a byte array. This method will block until some input can be read and compressed.
Parameters | |
---|---|
b |
byte : buffer into which the data is read |
off |
int : starting offset of the data within b |
len |
int : maximum number of compressed bytes to read into b |
Returns | |
---|---|
int |
the actual number of bytes read, or -1 if the end of the uncompressed input stream is reached |
Throws | |
---|---|
IndexOutOfBoundsException |
if len > b.length - off |
IOException |
if an I/O error occurs or if this input stream is already closed |
reset
public void reset ()
This operation is not supported.
Throws | |
---|---|
IOException |
always thrown |
skip
public long skip (long n)
Skips over and discards data from the input stream.
This method may block until the specified number of bytes are read and
skipped. Note: While n
is given as a long
,
the maximum number of bytes which can be skipped is
Integer.MAX_VALUE
.
Parameters | |
---|---|
n |
long : number of bytes to be skipped |
Returns | |
---|---|
long |
the actual number of bytes skipped |
Throws | |
---|---|
IOException |
if an I/O error occurs or if this stream is already closed |