Class InflaterOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.util.zip.InflaterOutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
Implements an output stream filter for uncompressing data stored in the
"deflate" compression format.
- Since:
- 1.6
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionprotected final byte[]
Output buffer for writing uncompressed data.protected final Inflater
Decompressor for this stream.Fields declared in class java.io.FilterOutputStream
out
-
Constructor Summary
ConstructorDescriptionCreates 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 TypeMethodDescriptionvoid
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.Methods declared in class java.io.FilterOutputStream
write
Methods declared in class java.io.OutputStream
nullOutputStream
-
Field Details
-
inf
Decompressor for this stream. -
buf
protected final byte[] bufOutput buffer for writing uncompressed data.
-
-
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:
-
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:
-
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:
-