writer2latex.util

Class Base64.OutputStream

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

OutputStream(java.io.OutputStream out)
Constructs a Base64.OutputStream in ENCODE mode.
OutputStream(java.io.OutputStream out, int options)
Constructs a Base64.OutputStream in either ENCODE or DECODE mode.

Method Summary

void
close()
Flushes and closes (I think, in the superclass) the stream.
void
flushBase64()
Method added by PHIL.
void
resumeEncoding()
Resumes encoding of the stream.
void
suspendEncoding()
Suspends encoding of the stream.
void
write(byte[] theBytes, int off, int len)
Calls write(int) repeatedly until len bytes are written.
void
write(int theByte)
Writes the byte to the output stream after converting to/from Base64 notation.

Constructor Details

OutputStream

public OutputStream(java.io.OutputStream out)
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 a Base64.OutputStream in either ENCODE or DECODE mode.

Valid options:

   ENCODE or DECODE: Encode or Decode as data is read.
   DONT_BREAK_LINES: don't break lines at 76 characters
     (only meaningful when encoding)
     Note: Technically, this makes your encoding non-compliant.
 

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

Method Details

close

public void close()
            throws java.io.IOException
Flushes and closes (I think, in the superclass) the stream.
Since:
1.3

flushBase64

public void flushBase64()
            throws java.io.IOException
Method added by PHIL. [Thanks, PHIL. -Rob] This pads the buffer without closing the stream.

resumeEncoding

public void resumeEncoding()
Resumes encoding of the stream. May be helpful if you need to embed a piece of base640-encoded data in a stream.
Since:
1.5.1

suspendEncoding

public void suspendEncoding()
            throws java.io.IOException
Suspends encoding of the stream. May be helpful if you need to embed a piece of base640-encoded data in a stream.
Since:
1.5.1

write

public void write(byte[] theBytes,
                  int off,
                  int len)
            throws java.io.IOException
Calls write(int) repeatedly until len bytes are written.
Parameters:
theBytes - array from which to read bytes
off - offset for array
len - max number of bytes to read into array
Since:
1.3

write

public void write(int theByte)
            throws java.io.IOException
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.
Parameters:
theByte - the byte to write
Since:
1.3