Class Base64

java.lang.Object
org.dbunit.util.Base64

public class Base64 extends Object

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.

Since:
1.3
Version:
$Revision$ $Date$
Author:
Robert Harder (rharder@usa.net), Last changed by: $Author$
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    A Base64.InputStream will read data from another InputStream, given in the constructor, and encode/decode to/from Base64 notation on the fly.
    static class 
    A Base64.OutputStream will write data to another OutputStream, given in the constructor, and encode/decode to/from Base64 notation on the fly.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final boolean
    Specify decoding (value is false).
    static final boolean
    Specify encoding (value is true).
  • Method Summary

    Modifier and Type
    Method
    Description
    static byte[]
    decode(byte[] source, int off, int len)
    Decodes Base64 content in byte array format and returns the decoded byte array.
    static byte[]
    Decodes data from Base64 notation.
    static Object
    decodeToObject(String encodedObject)
    Attempts to decode Base64 data and deserialize a Java Object within.
    static String
    Decodes data from Base64 notation and returns it as a string.
    static String
    encodeBytes(byte[] source)
    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
    encodeObject(Serializable serializableObject)
    Serializes an object and returns the Base64-encoded version of that serialized object.
    static String
    Encodes a string in Base64 notation with line breaks after every 75 Base64 characters.
    static void
    main(String[] args)
    Testing.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • ENCODE

      public static final boolean ENCODE
      Specify encoding (value is true).
      See Also:
    • DECODE

      public static final boolean DECODE
      Specify decoding (value is false).
      See Also:
  • Method Details

    • main

      public static void main(String[] args)
      Testing.
    • encodeObject

      public static String encodeObject(Serializable serializableObject)
      Serializes an object and returns the Base64-encoded version of that serialized object. If the object cannot be serialized or there is another error, the method will return null.
      Parameters:
      serializableObject - The object to encode
      Returns:
      The Base64-encoded object
      Since:
      1.4
    • encodeBytes

      public static String encodeBytes(byte[] source)
      Encodes a byte array into Base64 notation. Equivalen to calling encodeBytes( source, 0, source.length )
      Parameters:
      source - The data to convert
      Since:
      1.4
    • encodeBytes

      public static String encodeBytes(byte[] source, int off, int len)
      Encodes a byte array into Base64 notation.
      Parameters:
      source - The data to convert
      off - Offset in array where conversion should begin
      len - Length of data to convert
      Since:
      1.4
    • encodeString

      public static String encodeString(String s)
      Encodes a string in Base64 notation with line breaks after every 75 Base64 characters.
      Parameters:
      s - the string to encode
      Returns:
      the encoded string
      Since:
      1.3
    • decode

      public static byte[] decode(String s)
      Decodes data from Base64 notation.
      Parameters:
      s - the string to decode
      Returns:
      the decoded data
      Since:
      1.4
    • decodeToString

      public static String decodeToString(String s)
      Decodes data from Base64 notation and returns it as a string. Equivalent to calling new String( decode( s ) )
      Parameters:
      s - the string to decode
      Returns:
      The data as a string
      Since:
      1.4
    • decodeToObject

      public static Object decodeToObject(String encodedObject)
      Attempts to decode Base64 data and deserialize a Java Object within. Returns null if there was an error.
      Parameters:
      encodedObject - The Base64 data to decode
      Returns:
      The decoded and deserialized object
      Since:
      1.4
    • decode

      public static byte[] decode(byte[] source, int off, int len)
      Decodes Base64 content in byte array format and returns the decoded byte array.
      Parameters:
      source - The Base64 encoded data
      off - The offset of where to begin decoding
      len - The length of characters to decode
      Returns:
      decoded data
      Since:
      1.3