Package com.softsynth.jmsl.util
Class Base64.OutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
com.softsynth.jmsl.util.Base64.OutputStream
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.AutoCloseable
- Enclosing class:
- Base64
public static class Base64.OutputStream
extends java.io.FilterOutputStream
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:
Base64
-
Constructor Summary
Constructors Constructor Description OutputStream(java.io.OutputStream out)Constructs aBase64.OutputStreamin ENCODE mode.OutputStream(java.io.OutputStream out, int options)Constructs aBase64.OutputStreamin either ENCODE or DECODE mode. -
Method Summary
Modifier and Type Method Description voidclose()Flushes and closes (I think, in the superclass) the stream.voidflushBase64()Method added by PHIL.voidresumeEncoding()Resumes encoding of the stream.voidsuspendEncoding()Suspends encoding of the stream.voidwrite(byte[] theBytes, int off, int len)Callswrite(int)repeatedly until len bytes are written.voidwrite(int theByte)Writes the byte to the output stream after converting to/from Base64 notation.Methods inherited from class java.io.FilterOutputStream
flush, writeMethods inherited from class java.io.OutputStream
nullOutputStreamMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
OutputStream
public OutputStream(java.io.OutputStream out)Constructs aBase64.OutputStreamin ENCODE mode.- Parameters:
out- the java.io.OutputStream to which data will be written.- Since:
- 1.3
-
OutputStream
public OutputStream(java.io.OutputStream out, int options)Constructs aBase64.OutputStreamin 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:
Base64.ENCODE,Base64.DECODE,Base64.DO_BREAK_LINES
-
-
Method Details
-
write
public void write(int theByte) throws java.io.IOExceptionWrites 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:
writein classjava.io.FilterOutputStream- Parameters:
theByte- the byte to write- Throws:
java.io.IOException- Since:
- 1.3
-
write
public void write(byte[] theBytes, int off, int len) throws java.io.IOExceptionCallswrite(int)repeatedly until len bytes are written.- Overrides:
writein classjava.io.FilterOutputStream- Parameters:
theBytes- array from which to read bytesoff- offset for arraylen- max number of bytes to read into array- Throws:
java.io.IOException- Since:
- 1.3
-
flushBase64
public void flushBase64() throws java.io.IOExceptionMethod added by PHIL. [Thanks, PHIL. -Rob] This pads the buffer without closing the stream.- Throws:
java.io.IOException- if there's an error.
-
close
public void close() throws java.io.IOExceptionFlushes and closes (I think, in the superclass) the stream.- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Overrides:
closein classjava.io.FilterOutputStream- Throws:
java.io.IOException- Since:
- 1.3
-
suspendEncoding
public void suspendEncoding() throws java.io.IOExceptionSuspends encoding of the stream. May be helpful if you need to embed a piece of base64-encoded data in a stream.- Throws:
java.io.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
-