com.ihr.xbrl.util

## Class Base64Coder

- java.lang.Object
- - com.ihr.xbrl.util.Base64Coder

-     public class Base64Coder
      extends java.lang.Object

  A Base64 encoder/decoder.

  This class is used to encode and decode data in Base64 format as described in RFC 1521.

  Project home page: www.source-code.biz/base64coder/java
  Author: Christian d'Heureuse, Inventec Informatik AG, Zurich, Switzerland
  Multi-licensed: EPL / LGPL / GPL / AL / BSD / MIT.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static byte[]` | `decode(char[] in)` Decodes a byte array from Base64 format.
    `static byte[]` | `decode(char[] in, int iOff, int iLen)` Decodes a byte array from Base64 format.
    `static byte[]` | `decode(java.lang.String s)` Decodes a byte array from Base64 format.
    `static byte[]` | `decodeLines(java.lang.String s)` Decodes a byte array from Base64 format and ignores line separators, tabs and blanks.
    `static java.lang.String` | `decodeString(java.lang.String s)` Decodes a string from Base64 format.
    `static char[]` | `encode(byte[] in)` Encodes a byte array into Base64 format.
    `static char[]` | `encode(byte[] in, int iLen)` Encodes a byte array into Base64 format.
    `static char[]` | `encode(byte[] in, int iOff, int iLen)` Encodes a byte array into Base64 format.
    `static java.lang.String` | `encodeLines(byte[] in)` Encodes a byte array into Base 64 format and breaks the output into lines of 76 characters.
    `static java.lang.String` | `encodeLines(byte[] in, int iOff, int iLen, int lineLen, java.lang.String lineSeparator)` Encodes a byte array into Base 64 format and breaks the output into lines.
    `static java.lang.String` | `encodeString(java.lang.String s)` Encodes a string into Base64 format.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### encodeString

          public static java.lang.String encodeString(java.lang.String s)

      Encodes a string into Base64 format. No blanks or line breaks are inserted.
      Parameters:
        `s` - A String to be encoded.
      Returns:
        A String containing the Base64 encoded data.

    - #### encodeLines

          public static java.lang.String encodeLines(byte[] in)

      Encodes a byte array into Base 64 format and breaks the output into lines of 76 characters. This method is compatible with `sun.misc.BASE64Encoder.encodeBuffer(byte[])`.
      Parameters:
        `in` - An array containing the data bytes to be encoded.
      Returns:
        A String containing the Base64 encoded data, broken into lines.

    - #### encodeLines

          public static java.lang.String encodeLines(byte[] in,
                                     int iOff,
                                     int iLen,
                                     int lineLen,
                                     java.lang.String lineSeparator)

      Encodes a byte array into Base 64 format and breaks the output into lines.
      Parameters:
        `in` - An array containing the data bytes to be encoded.
        `iOff` - Offset of the first byte in `in` to be processed.
        `iLen` - Number of bytes to be processed in `in`, starting at `iOff`.
        `lineLen` - Line length for the output data. Should be a multiple of 4.
        `lineSeparator` - The line separator to be used to separate the output lines.
      Returns:
        A String containing the Base64 encoded data, broken into lines.

    - #### encode

          public static char[] encode(byte[] in)

      Encodes a byte array into Base64 format. No blanks or line breaks are inserted in the output.
      Parameters:
        `in` - An array containing the data bytes to be encoded.
      Returns:
        A character array containing the Base64 encoded data.

    - #### encode

          public static char[] encode(byte[] in,
                      int iLen)

      Encodes a byte array into Base64 format. No blanks or line breaks are inserted in the output.
      Parameters:
        `in` - An array containing the data bytes to be encoded.
        `iLen` - Number of bytes to process in `in`.
      Returns:
        A character array containing the Base64 encoded data.

    - #### encode

          public static char[] encode(byte[] in,
                      int iOff,
                      int iLen)

      Encodes a byte array into Base64 format. No blanks or line breaks are inserted in the output.
      Parameters:
        `in` - An array containing the data bytes to be encoded.
        `iOff` - Offset of the first byte in `in` to be processed.
        `iLen` - Number of bytes to process in `in`, starting at `iOff`.
      Returns:
        A character array containing the Base64 encoded data.

    - #### decodeString

          public static java.lang.String decodeString(java.lang.String s)

      Decodes a string from Base64 format. No blanks or line breaks are allowed within the Base64 encoded input data.
      Parameters:
        `s` - A Base64 String to be decoded.
      Returns:
        A String containing the decoded data.

    - #### decodeLines

          public static byte[] decodeLines(java.lang.String s)

      Decodes a byte array from Base64 format and ignores line separators, tabs and blanks. CR, LF, Tab and Space characters are ignored in the input data. This method is compatible with `sun.misc.BASE64Decoder.decodeBuffer(String)`.
      Parameters:
        `s` - A Base64 String to be decoded.
      Returns:
        An array containing the decoded data bytes.

    - #### decode

          public static byte[] decode(java.lang.String s)

      Decodes a byte array from Base64 format. No blanks or line breaks are allowed within the Base64 encoded input data.
      Parameters:
        `s` - A Base64 String to be decoded.
      Returns:
        An array containing the decoded data bytes.

    - #### decode

          public static byte[] decode(char[] in)

      Decodes a byte array from Base64 format. No blanks or line breaks are allowed within the Base64 encoded input data.
      Parameters:
        `in` - A character array containing the Base64 encoded data.
      Returns:
        An array containing the decoded data bytes.

    - #### decode

          public static byte[] decode(char[] in,
                      int iOff,
                      int iLen)

      Decodes a byte array from Base64 format. No blanks or line breaks are allowed within the Base64 encoded input data.
      Parameters:
        `in` - A character array containing the Base64 encoded data.
        `iOff` - Offset of the first character in `in` to be processed.
        `iLen` - Number of characters to process in `in`, starting at `iOff`.
      Returns:
        An array containing the decoded data bytes.