public class Base64
extends java.lang.Object
| Modifier and Type | Class and Description |
|---|---|
static class |
Base64.InputStream
A
Base64.InputStream will read data from another
java.io.InputStream, given in the constructor,
and encode/decode to/from Base64 notation on the fly. |
static class |
Base64.OutputStream
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. |
| Modifier and Type | Field and Description |
|---|---|
static int |
DECODE
Specify decoding.
|
static int |
DONT_BREAK_LINES
Don't break lines when encoding (violates strict Base64 specification)
|
static int |
ENCODE
Specify encoding.
|
static int |
GZIP
Specify that data should be gzip-compressed.
|
static int |
NO_OPTIONS
No options specified.
|
static int |
ORDERED
Encode using the special "ordered" dialect of Base64 described here:
http://www.faqs.org/qa/rfcc-1940.html.
|
static int |
URL_SAFE
Encode using Base64-like encoding that is URL- and Filename-safe as described
in Section 4 of RFC3548:
http://www.faqs.org/rfcs/rfc3548.html.
|
| Modifier and Type | Method and Description |
|---|---|
static byte[] |
decode(byte[] source,
int off,
int len,
int options)
Very low-level access to decoding ASCII characters in
the form of a byte array.
|
static byte[] |
decode(java.lang.String s)
Decodes data from Base64 notation, automatically
detecting gzip-compressed data and decompressing it.
|
static byte[] |
decode(java.lang.String s,
int options)
Decodes data from Base64 notation, automatically
detecting gzip-compressed data and decompressing it.
|
static boolean |
decodeFileToFile(java.lang.String infile,
java.lang.String outfile)
Reads infile and decodes it to outfile.
|
static byte[] |
decodeFromFile(java.lang.String filename)
Convenience method for reading a base64-encoded
file and decoding it.
|
static boolean |
decodeToFile(java.lang.String dataToDecode,
java.lang.String filename)
Convenience method for decoding data to a file.
|
static java.lang.Object |
decodeToObject(java.lang.String encodedObject)
Attempts to decode Base64 data and deserialize a Java
Object within.
|
static java.lang.String |
encodeBytes(byte[] source)
Encodes a byte array into Base64 notation.
|
static java.lang.String |
encodeBytes(byte[] source,
int options)
Encodes a byte array into Base64 notation.
|
static java.lang.String |
encodeBytes(byte[] source,
int off,
int len)
Encodes a byte array into Base64 notation.
|
static java.lang.String |
encodeBytes(byte[] source,
int off,
int len,
int options)
Encodes a byte array into Base64 notation.
|
static boolean |
encodeFileToFile(java.lang.String infile,
java.lang.String outfile)
Reads infile and encodes it to outfile.
|
static java.lang.String |
encodeFromFile(java.lang.String filename)
Convenience method for reading a binary file
and base64-encoding it.
|
static java.lang.String |
encodeObject(java.io.Serializable serializableObject)
Serializes an object and returns the Base64-encoded
version of that serialized object.
|
static java.lang.String |
encodeObject(java.io.Serializable serializableObject,
int options)
Serializes an object and returns the Base64-encoded
version of that serialized object.
|
static boolean |
encodeToFile(byte[] dataToEncode,
java.lang.String filename)
Convenience method for encoding data to a file.
|
static void |
main(java.lang.String[] args)
Encodes or decodes two files from the command line;
feel free to delete this method (in fact you probably should)
if you're embedding this code into a larger program.
|
public static final int NO_OPTIONS
public static final int ENCODE
public static final int DECODE
public static final int GZIP
public static final int DONT_BREAK_LINES
public static final int URL_SAFE
public static final int ORDERED
public static final void main(java.lang.String[] args)
public static java.lang.String encodeObject(java.io.Serializable serializableObject)
serializableObject - The object to encodepublic static java.lang.String encodeObject(java.io.Serializable serializableObject,
int options)
Valid options:
GZIP: gzip-compresses object before encoding it.
DONT_BREAK_LINES: don't break lines at 76 characters
Note: Technically, this makes your encoding non-compliant.
Example: encodeObject( myObj, Base64.GZIP ) or
Example: encodeObject( myObj, Base64.GZIP | Base64.DONT_BREAK_LINES )
serializableObject - The object to encodeoptions - Specified optionsGZIP,
DONT_BREAK_LINESpublic static java.lang.String encodeBytes(byte[] source)
source - The data to convertpublic static java.lang.String encodeBytes(byte[] source,
int options)
Valid options:
GZIP: gzip-compresses object before encoding it.
DONT_BREAK_LINES: don't break lines at 76 characters
Note: Technically, this makes your encoding non-compliant.
Example: encodeBytes( myData, Base64.GZIP ) or
Example: encodeBytes( myData, Base64.GZIP | Base64.DONT_BREAK_LINES )
source - The data to convertoptions - Specified optionsGZIP,
DONT_BREAK_LINESpublic static java.lang.String encodeBytes(byte[] source,
int off,
int len)
source - The data to convertoff - Offset in array where conversion should beginlen - Length of data to convertpublic static java.lang.String encodeBytes(byte[] source,
int off,
int len,
int options)
Valid options:
GZIP: gzip-compresses object before encoding it.
DONT_BREAK_LINES: don't break lines at 76 characters
Note: Technically, this makes your encoding non-compliant.
Example: encodeBytes( myData, Base64.GZIP ) or
Example: encodeBytes( myData, Base64.GZIP | Base64.DONT_BREAK_LINES )
source - The data to convertoff - Offset in array where conversion should beginlen - Length of data to convertoptions - Specified optionsoptions - alphabet type is pulled from this (standard, url-safe, ordered)GZIP,
DONT_BREAK_LINESpublic static byte[] decode(byte[] source,
int off,
int len,
int options)
source - The Base64 encoded dataoff - The offset of where to begin decodinglen - The length of characters to decodepublic static byte[] decode(java.lang.String s)
s - the string to decodepublic static byte[] decode(java.lang.String s,
int options)
s - the string to decodeoptions - encode options such as URL_SAFEpublic static java.lang.Object decodeToObject(java.lang.String encodedObject)
encodedObject - The Base64 data to decodepublic static boolean encodeToFile(byte[] dataToEncode,
java.lang.String filename)
dataToEncode - byte array of data to encode in base64 formfilename - Filename for saving encoded datapublic static boolean decodeToFile(java.lang.String dataToDecode,
java.lang.String filename)
dataToDecode - Base64-encoded data as a stringfilename - Filename for saving decoded datapublic static byte[] decodeFromFile(java.lang.String filename)
filename - Filename for reading encoded datapublic static java.lang.String encodeFromFile(java.lang.String filename)
filename - Filename for reading binary datapublic static boolean encodeFileToFile(java.lang.String infile,
java.lang.String outfile)
infile - Input fileoutfile - Output filepublic static boolean decodeFileToFile(java.lang.String infile,
java.lang.String outfile)
infile - Input fileoutfile - Output file