com.lowagie.text.pdf.codec

Class Base64.OutputStream

public static class Base64.OutputStream extends FilterOutputStream

A 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

Field Summary
byte[]alphabet
byte[]b4
booleanbreakLines
byte[]buffer
intbufferLength
byte[]decodabet
booleanencode
intlineLength
intoptions
intposition
booleansuspendEncoding
Constructor Summary
OutputStream(OutputStream out)
Constructs a OutputStream in ENCODE mode.
OutputStream(OutputStream out, int options)
Constructs a OutputStream in either ENCODE or DECODE mode.
Method Summary
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(int theByte)
Writes the byte to the output stream after converting to/from Base64 notation.
voidwrite(byte[] theBytes, int off, int len)
Calls OutputStream repeatedly until len bytes are written.

Field Detail

alphabet

private byte[] alphabet

b4

private byte[] b4

breakLines

private boolean breakLines

buffer

private byte[] buffer

bufferLength

private int bufferLength

decodabet

private byte[] decodabet

encode

private boolean encode

lineLength

private int lineLength

options

private int options

position

private int position

suspendEncoding

private boolean suspendEncoding

Constructor Detail

OutputStream

public OutputStream(OutputStream out)
Constructs a OutputStream in ENCODE mode.

Parameters: out the java.io.OutputStream to which data will be written.

Since: 1.3

OutputStream

public OutputStream(OutputStream out, int options)
Constructs a 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

See Also: ENCODE DECODE DONT_BREAK_LINES

Method Detail

close

public void close()
Flushes and closes (I think, in the superclass) the stream.

Since: 1.3

flushBase64

public void flushBase64()
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()
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(int theByte)
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

write

public void write(byte[] theBytes, int off, int len)
Calls OutputStream 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