public class Base64 extends Object
Encodes and decodes to and from Base64 notation.
Homepage: http://iharder.net/base64.
Change Log:
I am placing this code in the Public Domain. Do with it as you will. This software comes with no guarantees or warranties but with plenty of well-wishing instead! Please visit http://iharder.net/base64 periodically to check for updates or to contribute improvements.
| 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(String s) 
            
              Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it. 
               |  
          
static byte[] |  
           decode(String s, int options) 
            
              Decodes data from Base64 notation, automatically detecting gzip-compressed data and decompressing it. 
               |  
          
static void |  
           decodeFileToFile(String infile, String outfile) 
            
              Reads infile and decodes it to outfile. 
               |  
          
static byte[] |  
           decodeFromFile(String filename) 
            
              Convenience method for reading a base64-encoded file and decoding it. 
               |  
          
static boolean |  
           decodeToFile(String dataToDecode, String filename) 
            
              Convenience method for decoding data to a file. 
               |  
          
static Object |  
           decodeToObject(String encodedObject) 
            
              Attempts to decode Base64 data and deserialize a Java Object within. 
               |  
          
static String |  
           encodeBytes(byte[] source) 
            
              Encodes a byte array into Base64 notation. 
               |  
          
static String |  
           encodeBytes(byte[] source, int options) 
            
              Encodes a byte array into Base64 notation. 
               |  
          
static String |  
           encodeBytes(byte[] source, int off, int len) 
            
              Encodes a byte array into Base64 notation. 
               |  
          
static String |  
           encodeBytes(byte[] source, int off, int len, int options) 
            
              Encodes a byte array into Base64 notation. 
               |  
          
static void |  
           encodeFileToFile(String infile, String outfile) 
            
              Reads infile and encodes it to outfile. 
               |  
          
static String |  
           encodeFromFile(String filename) 
            
              Convenience method for reading a binary file and base64-encoding it. 
               |  
          
static String |  
           encodeObject(Serializable serializableObject) 
            
              Serializes an object and returns the Base64-encoded version of that serialized object. 
               |  
          
static String |  
           encodeObject(Serializable serializableObject, int options) 
            
              Serializes an object and returns the Base64-encoded version of that serialized object. 
               |  
          
static boolean |  
           encodeToFile(byte[] dataToEncode, String filename) 
            
              Convenience method for encoding data to a file. 
               |  
          
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 String encodeObject(Serializable serializableObject)
serializableObject - The object to encode 
           public static String encodeObject(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 encode 
           options - Specified options 
           GZIP, DONT_BREAK_LINES 
           public static String encodeBytes(byte[] source)
source - The data to convert 
           public static 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 convert 
           options - Specified options 
           GZIP, DONT_BREAK_LINES 
           public static String encodeBytes(byte[] source, int off, int len)
source - The data to convert 
           off - Offset in array where conversion should begin 
           len - Length of data to convert 
           public static 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 convert 
           off - Offset in array where conversion should begin 
           len - Length of data to convert 
           options - Specified options alphabet type is pulled from this (standard, url-safe, ordered) 
           GZIP, DONT_BREAK_LINES 
           public static byte[] decode(byte[] source,
                            int off,
                            int len,
                            int options) 
          source - The Base64 encoded data 
           off - The offset of where to begin decoding 
           len - The length of characters to decode 
           public static byte[] decode(String s)
s - the string to decode 
           public static byte[] decode(String s, int options)
s - the string to decode 
           options - encode options such as URL_SAFE 
           public static Object decodeToObject(String encodedObject)
encodedObject - The Base64 data to decode 
           public static boolean encodeToFile(byte[] dataToEncode,
                                   String filename) 
          dataToEncode - byte array of data to encode in base64 form 
           filename - Filename for saving encoded data 
           public static boolean decodeToFile(String dataToDecode, String filename)
dataToDecode - Base64-encoded data as a string 
           filename - Filename for saving decoded data 
           public static byte[] decodeFromFile(String filename)
filename - Filename for reading encoded data 
           public static String encodeFromFile(String filename)
filename - Filename for reading binary data 
           public static void encodeFileToFile(String infile, String outfile)
infile - Input file 
           outfile - Output file 
           Copyright © 1998–2019. All rights reserved.