Class BCodec

java.lang.Object
org.apache.commons.codec.net.BCodec
All Implemented Interfaces:
Decoder, Encoder, StringDecoder, StringEncoder

public class BCodec extends Object implements StringEncoder, StringDecoder
Identical to the Base64 encoding defined by RFC 1521 and allows a character set to be specified.

RFC 1522 describes techniques to allow the encoding of non-ASCII text in various portions of a RFC 822 [2] message header, in a manner which is unlikely to confuse existing message handling software.

This class is immutable and thread-safe.

Since:
1.3
See Also:
  • Constructor Details

    • BCodec

      public BCodec()
      Default constructor.
    • BCodec

      public BCodec(Charset charset)
      Constructor which allows for the selection of a default Charset
      Parameters:
      charset - the default string Charset to use.
      Since:
      1.7
      See Also:
    • BCodec

      public BCodec(Charset charset, CodecPolicy decodingPolicy)
      Constructor which allows for the selection of a default Charset.
      Parameters:
      charset - the default string Charset to use.
      decodingPolicy - The decoding policy.
      Since:
      1.15
      See Also:
    • BCodec

      public BCodec(String charsetName)
      Constructor which allows for the selection of a default Charset
      Parameters:
      charsetName - the default Charset to use.
      Throws:
      UnsupportedCharsetException - If the named Charset is unavailable
      Since:
      1.7 throws UnsupportedCharsetException if the named Charset is unavailable
      See Also:
  • Method Details

    • decode

      public Object decode(Object value) throws DecoderException
      Decodes a Base64 object into its original form. Escaped characters are converted back to their original representation.
      Specified by:
      decode in interface Decoder
      Parameters:
      value - Base64 object to convert into its original form
      Returns:
      original object
      Throws:
      DecoderException - Thrown if the argument is not a String. Thrown if a failure condition is encountered during the decode process.
    • decode

      public String decode(String value) throws DecoderException
      Decodes a Base64 string into its original form. Escaped characters are converted back to their original representation.
      Specified by:
      decode in interface StringDecoder
      Parameters:
      value - Base64 string to convert into its original form
      Returns:
      original string
      Throws:
      DecoderException - A decoder exception is thrown if a failure condition is encountered during the decode process.
    • encode

      public Object encode(Object value) throws EncoderException
      Encodes an object into its Base64 form using the default Charset. Unsafe characters are escaped.
      Specified by:
      encode in interface Encoder
      Parameters:
      value - object to convert to Base64 form
      Returns:
      Base64 object
      Throws:
      EncoderException - thrown if a failure condition is encountered during the encoding process.
    • encode

      public String encode(String strSource) throws EncoderException
      Encodes a string into its Base64 form using the default Charset. Unsafe characters are escaped.
      Specified by:
      encode in interface StringEncoder
      Parameters:
      strSource - string to convert to Base64 form
      Returns:
      Base64 string
      Throws:
      EncoderException - thrown if a failure condition is encountered during the encoding process.
    • encode

      public String encode(String strSource, Charset sourceCharset) throws EncoderException
      Encodes a string into its Base64 form using the specified Charset. Unsafe characters are escaped.
      Parameters:
      strSource - string to convert to Base64 form
      sourceCharset - the Charset for value
      Returns:
      Base64 string
      Throws:
      EncoderException - thrown if a failure condition is encountered during the encoding process.
      Since:
      1.7
    • encode

      public String encode(String strSource, String sourceCharset) throws EncoderException
      Encodes a string into its Base64 form using the specified Charset. Unsafe characters are escaped.
      Parameters:
      strSource - string to convert to Base64 form
      sourceCharset - the Charset for value
      Returns:
      Base64 string
      Throws:
      EncoderException - thrown if a failure condition is encountered during the encoding process.
    • isStrictDecoding

      public boolean isStrictDecoding()
      Returns true if decoding behavior is strict. Decoding will raise a DecoderException if trailing bits are not part of a valid Base64 encoding.

      The default is false for lenient encoding. Decoding will compose trailing bits into 8-bit bytes and discard the remainder.

      Returns:
      true if using strict decoding
      Since:
      1.15
    • getCharset

      public Charset getCharset()
      Gets the default Charset name used for string decoding and encoding.
      Returns:
      the default Charset name
      Since:
      1.7
    • getDefaultCharset

      public String getDefaultCharset()
      Gets the default Charset name used for string decoding and encoding.
      Returns:
      the default Charset name