Package org.apache.commons.io.output
Class ChunkedOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
org.apache.commons.io.output.ChunkedOutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
OutputStream which breaks larger output blocks into chunks.
Native code may need to copy the input array; if the write buffer
is very large this can cause OOME.
- Since:
- 2.5
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int
The maximum chunk size to us when writing data arraysprivate static final int
The default chunk size to use, i.e.Fields inherited from class java.io.FilterOutputStream
out
-
Constructor Summary
ConstructorsConstructorDescriptionChunkedOutputStream
(OutputStream stream) Creates a new stream that uses a chunk size ofDEFAULT_CHUNK_SIZE
.ChunkedOutputStream
(OutputStream stream, int chunkSize) Creates a new stream that uses the specified chunk size. -
Method Summary
Modifier and TypeMethodDescriptionvoid
write
(byte[] data, int srcOffset, int length) Writes the data buffer in chunks to the underlying streamMethods inherited from class java.io.FilterOutputStream
close, flush, write, write
Methods inherited from class java.io.OutputStream
nullOutputStream
-
Field Details
-
DEFAULT_CHUNK_SIZE
private static final int DEFAULT_CHUNK_SIZEThe default chunk size to use, i.e. 4096 bytes.- See Also:
-
chunkSize
private final int chunkSizeThe maximum chunk size to us when writing data arrays
-
-
Constructor Details
-
ChunkedOutputStream
Creates a new stream that uses the specified chunk size.- Parameters:
stream
- the stream to wrapchunkSize
- the chunk size to use; must be a positive number.- Throws:
IllegalArgumentException
- if the chunk size is <= 0
-
ChunkedOutputStream
Creates a new stream that uses a chunk size ofDEFAULT_CHUNK_SIZE
.- Parameters:
stream
- the stream to wrap
-
-
Method Details
-
write
Writes the data buffer in chunks to the underlying stream- Overrides:
write
in classFilterOutputStream
- Parameters:
data
- the data to writesrcOffset
- the offsetlength
- the length of data to write- Throws:
IOException
- if an I/O error occurs.
-