Class Base64

java.lang.Object
org.apache.jackrabbit.util.Base64

public class Base64 extends Object
Base64 provides Base64 encoding/decoding of strings and streams.
  • Method Details

    • main

      public static void main(String[] args)
      Base64-decodes or -encodes (see decodeOrEncode(String) all the given arguments and prints the results on separate lines in standard output.
      Parameters:
      args - command line arguments to be decoded or encoded
      Since:
      Apache Jackrabbit 2.3
    • decodeOrEncode

      public static String decodeOrEncode(String data)
      Base64-decodes or -encodes the given string, depending on whether or not it contains a "{base64}" prefix. If the string gets encoded, the "{base64}" prefix is added to it.
      Parameters:
      data - string to be decoded or encoded
      Returns:
      decoded or encoded string
      Since:
      Apache Jackrabbit 2.3
    • decodeIfEncoded

      public static String decodeIfEncoded(String data)
      Decodes a base64-encoded string marked by a "{base64}" prefix. If the prefix is not found, then the string is returned as-is. If the given string is null, then null is returned.
      Parameters:
      data - string to be decoded, can be null
      Returns:
      the given string, possibly decoded
      Since:
      Apache Jackrabbit 2.3
    • calcEncodedLength

      public static long calcEncodedLength(long dataLength)
      Calculates the size (i.e. number of bytes) of the base64 encoded output given the length (i.e. number of bytes) of the data to be encoded.
      Parameters:
      dataLength - length (i.e. number of bytes) of the data to be encoded
      Returns:
      size (i.e. number of bytes) of the base64 encoded output
    • guessDecodedLength

      public static long guessDecodedLength(long encLength)
      Pessimistically guesses the size (i.e. number of bytes) of the decoded output given the length (i.e. number of bytes) of the base64 encoded data.
      Parameters:
      encLength - length (i.e. number of bytes) of the base64 encoded data
      Returns:
      size (i.e. number of bytes) of the decoded output
    • encode

      public static void encode(InputStream in, Writer writer) throws IOException
      Outputs base64 representation of the specified stream data to a Writer.
      Parameters:
      in - stream data to be encoded
      writer - writer to output the encoded data
      Throws:
      IOException - if an i/o error occurs
    • encode

      public static void encode(InputStream in, OutputStream out) throws IOException
      Outputs base64 representation of the specified stream data to an OutputStream.
      Parameters:
      in - stream data to be encoded
      out - stream where the encoded data should be written to
      Throws:
      IOException - if an i/o error occurs
    • encode

      public static void encode(byte[] data, int off, int len, Writer writer) throws IOException
      Outputs base64 representation of the specified data to a Writer.
      Parameters:
      data - data to be encoded
      off - offset within data at which to start encoding
      len - length of data to encode
      writer - writer to output the encoded data
      Throws:
      IOException - if an i/o error occurs
    • encode

      public static String encode(String data)
      Returns the base64 representation of UTF-8 encoded string.
      Parameters:
      data - the string to be encoded
      Returns:
      base64-encoding of the string
      Since:
      Apache Jackrabbit 2.3
    • decode

      public static String decode(String data)
      Decodes a base64-encoded string using the UTF-8 character encoding. The given string is returned as-is if it doesn't contain a valid base64 encoding.
      Parameters:
      data - the base64-encoded data to be decoded
      Returns:
      decoded string
      Since:
      Apache Jackrabbit 2.3
    • decode

      public static void decode(Reader reader, OutputStream out) throws IOException
      Decode base64 encoded data.
      Parameters:
      reader - reader for the base64 encoded data to be decoded
      out - stream where the decoded data should be written to
      Throws:
      IOException - if an i/o error occurs
    • decode

      public static void decode(InputStream in, OutputStream out) throws IOException
      Decode base64 encoded data. The data read from the inputstream is assumed to be of charset "US-ASCII".
      Parameters:
      in - inputstream of the base64 encoded data to be decoded
      out - stream where the decoded data should be written to
      Throws:
      IOException - if an i/o error occurs
    • decode

      public static void decode(String data, OutputStream out) throws IOException
      Decode base64 encoded data.
      Parameters:
      data - the base64 encoded data to be decoded
      out - stream where the decoded data should be written to
      Throws:
      IOException - if an i/o error occurs
    • decode

      public static void decode(char[] chars, OutputStream out) throws IOException
      Decode base64 encoded data.
      Parameters:
      chars - the base64 encoded data to be decoded
      out - stream where the decoded data should be written to
      Throws:
      IOException - if an i/o error occurs
    • decode

      public static void decode(char[] chars, int off, int len, OutputStream out) throws IOException
      Decode base64 encoded data.
      Parameters:
      chars - the base64 encoded data to be decoded
      off - offset within data at which to start decoding
      len - length of data to decode
      out - stream where the decoded data should be written to
      Throws:
      IOException - if an i/o error occurs