java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.util.zip.InflaterOutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
public class InflaterOutputStream extends FilterOutputStream
Implements an output stream filter for uncompressing data stored in the
"deflate" compression format.
- Since:
- 1.6
- See Also:
InflaterInputStream
,DeflaterInputStream
,DeflaterOutputStream
-
Field Summary
-
Constructor Summary
Constructors Constructor Description InflaterOutputStream(OutputStream out)
Creates a new output stream with a default decompressor and buffer size.InflaterOutputStream(OutputStream out, Inflater infl)
Creates a new output stream with the specified decompressor and a default buffer size.InflaterOutputStream(OutputStream out, Inflater infl, int bufLen)
Creates a new output stream with the specified decompressor and buffer size. -
Method Summary
Modifier and Type Method Description void
close()
Writes any remaining uncompressed data to the output stream and closes the underlying output stream.void
finish()
Finishes writing uncompressed data to the output stream without closing the underlying stream.void
flush()
Flushes this output stream, forcing any pending buffered output bytes to be written.void
write(byte[] b, int off, int len)
Writes an array of bytes to the uncompressed output stream.void
write(int b)
Writes a byte to the uncompressed output stream.
-
Field Details
-
Constructor Details
-
InflaterOutputStream
Creates a new output stream with a default decompressor and buffer size.- Parameters:
out
- output stream to write the uncompressed data to- Throws:
NullPointerException
- ifout
is null
-
InflaterOutputStream
Creates a new output stream with the specified decompressor and a default buffer size.- Parameters:
out
- output stream to write the uncompressed data toinfl
- decompressor ("inflater") for this stream- Throws:
NullPointerException
- ifout
orinfl
is null
-
InflaterOutputStream
Creates a new output stream with the specified decompressor and buffer size.- Parameters:
out
- output stream to write the uncompressed data toinfl
- decompressor ("inflater") for this streambufLen
- decompression buffer size- Throws:
IllegalArgumentException
- ifbufLen <= 0
NullPointerException
- ifout
orinfl
is null
-
-
Method Details
-
close
Writes any remaining uncompressed data to the output stream and closes the underlying output stream.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classFilterOutputStream
- Throws:
IOException
- if an I/O error occurs- See Also:
FilterOutputStream.flush()
,FilterOutputStream.out
-
flush
Flushes this output stream, forcing any pending buffered output bytes to be written.- Specified by:
flush
in interfaceFlushable
- Overrides:
flush
in classFilterOutputStream
- Throws:
IOException
- if an I/O error occurs or this stream is already closed- See Also:
FilterOutputStream.out
-
finish
Finishes writing uncompressed data to the output stream without closing the underlying stream. Use this method when applying multiple filters in succession to the same output stream.- Throws:
IOException
- if an I/O error occurs or this stream is already closed
-
write
Writes a byte to the uncompressed output stream.- Overrides:
write
in classFilterOutputStream
- Parameters:
b
- a single byte of compressed data to decompress and write to the output stream- Throws:
IOException
- if an I/O error occurs or this stream is already closedZipException
- if a compression (ZIP) format error occurs
-
write
Writes an array of bytes to the uncompressed output stream.- Overrides:
write
in classFilterOutputStream
- Parameters:
b
- buffer containing compressed data to decompress and write to the output streamoff
- starting offset of the compressed data withinb
len
- number of bytes to decompress fromb
- Throws:
IndexOutOfBoundsException
- ifoff < 0
, or iflen < 0
, or iflen > b.length - off
IOException
- if an I/O error occurs or this stream is already closedNullPointerException
- ifb
is nullZipException
- if a compression (ZIP) format error occurs- See Also:
FilterOutputStream.write(int)
-