public class Base64OutputStream extends OutputStream implements OutputStreaming
| Modifier and Type | Field and Description | 
|---|---|
| protected static char[] | BASE64_ALPHABETBase64 encodes into this "alphabet" of 64 characters. | 
| protected static char | BASE64_LFThe Base64 line feed character. | 
| protected static char | BASE64_PADThe Base64 padding character. | 
| protected static int | GROUPS_PER_LINEThe number of Base64 character groups in one line. | 
| protected byte[] | m_abAccumAccumulated bytes. | 
| protected char[] | m_achGroupAn array that is used to send 4 characters at a time to the underlying Writer object. | 
| protected int | m_cAccumThe number of bytes accumulated (0, 1, 2 or 3). | 
| protected int | m_cLineGroupsThe number of groups left to write in the current line. | 
| protected boolean | m_fBreakLinesTrue if lines are to be broken by BASE64_LF; | 
| protected boolean | m_fClosedTrue after close is invoked. | 
| protected Writer | m_writerThe Writer object to which the Base64 encoded data is written. | 
| Constructor and Description | 
|---|
| Base64OutputStream(Writer writer)Construct a Base64OutputStream on a Writer object. | 
| Base64OutputStream(Writer writer, boolean fBreakLines)Construct a Base64OutputStream on a Writer object and specifying a line-break option. | 
| Modifier and Type | Method and Description | 
|---|---|
| void | close()Close the stream, flushing any accumulated bytes. | 
| static char[] | encode(byte[] ab)Encode the passed binary data using Base64 encoding. | 
| static char[] | encode(byte[] ab, boolean fBreakLines)Encode the passed binary data using Base64 encoding. | 
| static char[] | encode(byte[] ab, int ofb, int cb, boolean fBreakLines)Encode the passed binary data using Base64 encoding. | 
| void | flush()Close the stream, flushing any accumulated bytes. | 
| protected void | flushAccumulator()Flushes the bytes accumulated by the write(int) method. | 
| void | write(byte[] ab, int ofb, int cb)Writes  lenbytes from the specified byte array starting at offsetoffto this output stream. | 
| void | write(int b)Writes the specified byte to this output stream. | 
writeprotected static final char[] BASE64_ALPHABET
protected static final char BASE64_PAD
protected static final char BASE64_LF
protected static final int GROUPS_PER_LINE
protected boolean m_fClosed
protected Writer m_writer
protected boolean m_fBreakLines
protected int m_cLineGroups
protected byte[] m_abAccum
protected int m_cAccum
protected char[] m_achGroup
public Base64OutputStream(Writer writer)
writer - the Writer to write the Base64 encoded data topublic Base64OutputStream(Writer writer, boolean fBreakLines)
writer - the Writer to write the Base64 encoded data tofBreakLines - true to break the output into 76-character lines
public void write(int b)
           throws IOException
write in interface com.oracle.common.io.OutputStreamingwrite in class OutputStreamb - the byte.IOException - if an I/O error occurs. In particular, an IOException may be thrown if the output stream has been closed.
public void write(byte[] ab,
                  int ofb,
                  int cb)
           throws IOException
len bytes from the specified byte array starting at offset off to this output stream.
If b is null, a NullPointerException is thrown.
If off is negative, or len is negative, or off+len is greater than the length of the array b, then an IndexOutOfBoundsException is thrown.
write in interface com.oracle.common.io.OutputStreamingwrite in class OutputStreamab - the dataofb - the start offset in the datacb - the number of bytes to writeIOException - if an I/O error occurs. In particular, an IOException is thrown if the output stream is closed.
public void flush()
           throws IOException
flush in interface com.oracle.common.io.OutputStreamingflush in interface Flushableflush in class OutputStreamIOException - if an I/O error occurs
public void close()
           throws IOException
close in interface com.oracle.common.io.OutputStreamingclose in interface Closeableclose in interface AutoCloseableclose in class OutputStreamIOException - if an I/O error occurs
protected void flushAccumulator()
                         throws IOException
IOException - if an I/O error occurspublic static char[] encode(byte[] ab)
ab - the array containing the bytes to encode
public static char[] encode(byte[] ab,
                            boolean fBreakLines)
ab - the array containing the bytes to encodefBreakLines - true to break the output into 76-character lines
public static char[] encode(byte[] ab,
                            int ofb,
                            int cb,
                            boolean fBreakLines)
ab - the array containing the bytes to encodeofb - the start offset in the byte arraycb - the number of bytes to encodefBreakLines - true to break the output into 76-character lines