Class Base64.OutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
com.pnfsoftware.jeb.util.encoding.Base64.OutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
- Enclosing class:
- Base64
A
Base64.OutputStream
will write data to another java.io.OutputStream, given
in the constructor, and encode/decode to/from Base64 notation on the fly.- Since:
- 1.3
- See Also:
-
Field Summary
Fields inherited from class java.io.FilterOutputStream
out
-
Constructor Summary
ConstructorsConstructorDescriptionOutputStream
(OutputStream out) Constructs aBase64.OutputStream
in ENCODE mode.OutputStream
(OutputStream out, int options) Constructs aBase64.OutputStream
in either ENCODE or DECODE mode. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Flushes and closes (I think, in the superclass) the stream.void
Method added by PHIL [Thanks, PHIL -Rob] This pads the buffer without closing the stream.void
Resumes encoding of the stream.void
Suspends encoding of the stream.void
write
(byte[] theBytes, int off, int len) Callswrite(int)
repeatedly until len bytes are written.void
write
(int theByte) Writes the byte to the output stream after converting to/from Base64 notation.Methods inherited from class java.io.FilterOutputStream
flush, write
Methods inherited from class java.io.OutputStream
nullOutputStream
-
Constructor Details
-
OutputStream
Constructs aBase64.OutputStream
in ENCODE mode.- Parameters:
out
- the java.io.OutputStream to which data will be written.- Since:
- 1.3
-
OutputStream
Constructs aBase64.OutputStream
in either ENCODE or DECODE mode.Valid options:
ENCODE or DECODE: Encode or Decode as data is read. DO_BREAK_LINES: don't break lines at 76 characters (only meaningful when encoding)
Example:
new Base64.OutputStream( out, Base64.ENCODE )
- Parameters:
out
- the java.io.OutputStream to which data will be written.options
- Specified options.- Since:
- 1.3
- See Also:
-
-
Method Details
-
write
Writes the byte to the output stream after converting to/from Base64 notation. When encoding, bytes are buffered three at a time before the output stream actually gets a write() call. When decoding, bytes are buffered four at a time.- Overrides:
write
in classFilterOutputStream
- Parameters:
theByte
- the byte to write- Throws:
IOException
- Since:
- 1.3
-
write
Callswrite(int)
repeatedly until len bytes are written.- Overrides:
write
in classFilterOutputStream
- Parameters:
theBytes
- array from which to read bytesoff
- offset for arraylen
- max number of bytes to read into array- Throws:
IOException
- Since:
- 1.3
-
flushBase64
Method added by PHIL [Thanks, PHIL -Rob] This pads the buffer without closing the stream.- Throws:
IOException
- if there's an error.
-
close
Flushes and closes (I think, in the superclass) the stream.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classFilterOutputStream
- Throws:
IOException
- Since:
- 1.3
-
suspendEncoding
Suspends encoding of the stream. May be helpful if you need to embed a piece of base64-encoded data in a stream.- Throws:
IOException
- if there's an error flushing- Since:
- 1.5.1
-
resumeEncoding
public void resumeEncoding()Resumes encoding of the stream. May be helpful if you need to embed a piece of base64-encoded data in a stream.- Since:
- 1.5.1
-