Package com.itextpdf.commons.utils
Class Base64.OutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
com.itextpdf.commons.utils.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.OutputStreamin ENCODE mode.OutputStream(OutputStream out, int options) Constructs aBase64.OutputStreamin either ENCODE or DECODE mode. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Flushes and closes (I think, in the superclass) the stream.voidMethod added by PHIL.voidResumes encoding of the stream.voidSuspends 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
nullOutputStream
-
Constructor Details
-
OutputStream
Constructs aBase64.OutputStreamin ENCODE mode.- Parameters:
-
out- the java.io.OutputStream to which data will be written. - Since:
- 1.3
-
OutputStream
Constructs aBase64.OutputStreamin 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:
-
-
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:
-
writein classFilterOutputStream - Parameters:
-
theByte- the byte to write - Throws:
-
IOException - Since:
- 1.3
-
write
Callswrite(int)repeatedly until len bytes are written.- Overrides:
-
writein classFilterOutputStream - Parameters:
-
theBytes- array from which to read bytes -
off- offset for array -
len- 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 an I/O error occurs.
-
close
Flushes and closes (I think, in the superclass) the stream.- Specified by:
-
closein interfaceAutoCloseable - Specified by:
-
closein interfaceCloseable - Overrides:
-
closein classFilterOutputStream - Throws:
-
IOException - Since:
- 1.3
-
suspendEncoding
Suspends encoding of the stream. May be helpful if you need to embed a piece of base640-encoded data in a stream.- Throws:
-
IOException- if an I/O error occurs. - Since:
- 1.5.1
-
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
-