com.imaginary.util
Class Base64Encoder

java.lang.Object
  |
  +--com.imaginary.util.Encoder
        |
        +--com.imaginary.util.Base64Encoder

public class Base64Encoder
extends Encoder

Provides BASE64 encoding and decoding for binary data. This class currently uses the sun.misc.BASE64Encoder and sun.misc.BASE64Decoder classes. The point of this class is first of all to work with a generic encoding/decoding API and second of all provide a level of indirection from the Sun classes in the event they stop supporting those classes.

BASE64 encoding is a way to save binary data in ASCII strings. To make use of BASE64 encoding, execute the following code:

 Encoder encoder = Encoder.getInstance(Encoder.BASE64);
 String ascii = new String(encoder.encode(binary), "8859_1");
 

Last modified $Date: 1999/11/06 19:50:49 $


Fields inherited from class com.imaginary.util.Encoder
BASE64
 
Method Summary
 byte[] decode(byte[] encoded)
          Decodes a byte array representing an ASCII string into its original, binary format.
 byte[] decode(java.lang.String encoded)
          Decodes an ASCII string into its original, binary format.
 byte[] encode(byte[] decoded)
          Encodes raw binary data into an ASCII format.
 byte[] encode(java.lang.String decoded)
          Encodes a Unicode string into an ASCII format.
 
Methods inherited from class com.imaginary.util.Encoder
getInstance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

decode

public byte[] decode(byte[] encoded)
Decodes a byte array representing an ASCII string into its original, binary format.
Parameters:
encoded - a byte array of BASE64 encoded ASCII data
Returns:
a byte array of decoded binary data
Overrides:
decode in class Encoder

decode

public byte[] decode(java.lang.String encoded)
Decodes an ASCII string into its original, binary format.
Parameters:
encoded - an ASCII string of BASE64 encoded data
Returns:
a byte array of decoded binary data
Overrides:
decode in class Encoder

encode

public byte[] encode(byte[] decoded)
Encodes raw binary data into an ASCII format.
Parameters:
decoded - the raw binary data to be encoded
Returns:
a byte array representing an ASCII string
Overrides:
encode in class Encoder

encode

public byte[] encode(java.lang.String decoded)
Encodes a Unicode string into an ASCII format. You will likely never want to use this method. Because BASE63 encoding is for encoding binary data into an ASCII format, this method really exists for compatibility with the Encoder interface.
Parameters:
decoded - a Unicode string
Returns:
a byte array representing an ASCII string
Overrides:
encode in class Encoder