Package org.apache.commons.codec.binary
Class BaseNCodecOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
org.apache.commons.codec.binary.BaseNCodecOutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
- Direct Known Subclasses:
Base16OutputStream
,Base32OutputStream
,Base64OutputStream
Abstract superclass for Base-N output streams.
To write the EOF marker without closing the stream, call eof()
or use an Apache Commons IO CloseShieldOutputStream.
- Since:
- 1.5
-
Field Summary
Fields inherited from class java.io.FilterOutputStream
out
-
Constructor Summary
ConstructorDescriptionBaseNCodecOutputStream
(OutputStream outputStream, BaseNCodec basedCodec, boolean doEncode) Constructs a new instance. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes this output stream and releases any system resources associated with the stream.void
eof()
Writes EOF.void
flush()
Flushes this output stream and forces any buffered output bytes to be written out to the stream.boolean
Returns true if decoding behavior is strict.void
write
(byte[] array, int offset, int len) Writeslen
bytes from the specifiedb
array starting atoffset
to this output stream.void
write
(int i) Writes the specifiedbyte
to this output stream.Methods inherited from class java.io.FilterOutputStream
write
-
Constructor Details
-
BaseNCodecOutputStream
Constructs a new instance. TODO should this be protected?- Parameters:
outputStream
- the underlying output or null.basedCodec
- a BaseNCodec.doEncode
- true to encode, false to decode, TODO should be an enum?
-
-
Method Details
-
close
Closes this output stream and releases any system resources associated with the stream.To write the EOF marker without closing the stream, call
eof()
or use an Apache Commons IO CloseShieldOutputStream.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classFilterOutputStream
- Throws:
IOException
- if an I/O error occurs.
-
eof
Writes EOF.- Since:
- 1.11
-
flush
Flushes this output stream and forces any buffered output bytes to be written out to the stream.- Specified by:
flush
in interfaceFlushable
- Overrides:
flush
in classFilterOutputStream
- Throws:
IOException
- if an I/O error occurs.
-
isStrictDecoding
Returns true if decoding behavior is strict. Decoding will raise anIllegalArgumentException
if trailing bits are not part of a valid encoding.The default is false for lenient encoding. Decoding will compose trailing bits into 8-bit bytes and discard the remainder.
- Returns:
- true if using strict decoding
- Since:
- 1.15
-
write
Writeslen
bytes from the specifiedb
array starting atoffset
to this output stream.- Overrides:
write
in classFilterOutputStream
- Parameters:
array
- source byte arrayoffset
- where to start reading the byteslen
- maximum number of bytes to write- Throws:
IOException
- if an I/O error occurs.NullPointerException
- if the byte array parameter is nullIndexOutOfBoundsException
- if offset, len or buffer size are invalid
-
write
Writes the specifiedbyte
to this output stream.- Overrides:
write
in classFilterOutputStream
- Parameters:
i
- source byte- Throws:
IOException
- if an I/O error occurs.
-