public class Inflater extends Object
setInput()
, then inflate() it. If inflate doesn't
inflate any bytes there may be three reasons:
setInput()
.
NOTE: needsInput() also returns true when, the stream is finished.
setDictionary()
.Constructor and Description |
---|
Inflater()
Creates a new inflater.
|
Inflater(boolean noHeader)
Creates a new inflater.
|
Modifier and Type | Method and Description |
---|---|
void |
end()
Deprecated.
Just clear all references to inflater instead.
|
protected void |
finalize()
Finalizes this object.
|
boolean |
finished()
Returns true, if the inflater has finished.
|
int |
getAdler()
Gets the adler checksum.
|
int |
getRemaining()
Gets the number of unprocessed input.
|
int |
getTotalIn()
Gets the total number of processed compressed input bytes.
|
int |
getTotalOut()
Gets the total number of output bytes returned by inflate().
|
int |
inflate(byte[] buf)
Inflates the compressed stream to the output buffer.
|
int |
inflate(byte[] buf,
int off,
int len)
Inflates the compressed stream to the output buffer.
|
boolean |
needsDictionary()
Returns true, if a preset dictionary is needed to inflate the input.
|
boolean |
needsInput()
Returns true, if the input buffer is empty.
|
void |
reset()
Resets the inflater so that a new stream can be decompressed.
|
void |
setDictionary(byte[] buf)
Sets the preset dictionary.
|
void |
setDictionary(byte[] buf,
int off,
int len)
Sets the preset dictionary.
|
void |
setInput(byte[] buf)
Sets the input.
|
void |
setInput(byte[] buf,
int off,
int len)
Sets the input.
|
public Inflater()
public Inflater(boolean noHeader)
nowrap
- true if no header and checksum field appears in the
stream. This is used for GZIPed input. For compatibility with
Sun JDK you should provide one byte of input more than needed in
this case.protected void finalize()
finalize
in class Object
System.gc()
,
System.runFinalizersOnExit(boolean)
,
java.lang.ref
public void end()
public boolean finished()
public int getAdler()
public int getRemaining()
public int getTotalIn()
public int getTotalOut()
public int inflate(byte[] buf) throws DataFormatException
buffer
- the output buffer.DataFormatException
- if deflated stream is invalid.IllegalArgumentException
- if buf has length 0.public int inflate(byte[] buf, int off, int len) throws DataFormatException
buffer
- the output buffer.off
- the offset into buffer where the output should start.len
- the maximum length of the output.DataFormatException
- if deflated stream is invalid.IndexOutOfBoundsException
- if the off and/or len are wrong.public boolean needsDictionary()
public boolean needsInput()
public void reset()
public void setDictionary(byte[] buf)
buffer
- the dictionary.IllegalStateException
- if no dictionary is needed.IllegalArgumentException
- if the dictionary checksum is
wrong.public void setDictionary(byte[] buf, int off, int len)
buffer
- the dictionary.off
- the offset into buffer where the dictionary starts.len
- the length of the dictionary.IllegalStateException
- if no dictionary is needed.IllegalArgumentException
- if the dictionary checksum is
wrong.IndexOutOfBoundsException
- if the off and/or len are wrong.public void setInput(byte[] buf)
buffer
- the input.IllegalStateException
- if no input is needed.public void setInput(byte[] buf, int off, int len)
buffer
- the input.off
- the offset into buffer where the input starts.len
- the length of the input.IllegalStateException
- if no input is needed.IndexOutOfBoundsException
- if the off and/or len are wrong.