## org.codehaus.plexus.util
Class Base64

    java.lang.Object
      org.codehaus.plexus.util.Base64

    public class Base64

extends Object

Provides Base64 encoding and decoding as defined by RFC 2045.

This class implements section 6.8. Base64 Content-Transfer-Encoding from RFC 2045 Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies by Freed and Borenstein.

Since:
  1.0-dev
Version:
  $Id: Base64.java 8010 2009-01-07 12:59:50Z vsiveton $
Author:
  Apache Software Foundation
See Also:
  RFC 2045

Constructor Summary
`Base64()`

Method Summary
`byte[]` `decode(byte[] pArray)` Decodes a byte[] containing containing characters in the Base64 alphabet.
`static byte[]` `decodeBase64(byte[] base64Data)` Decodes Base64 data into octects
`byte[]` `encode(byte[] pArray)` Encodes a byte[] containing binary data, into a byte[] containing characters in the Base64 alphabet.
`static byte[]` `encodeBase64(byte[] binaryData)` Encodes binary data using the base64 algorithm but does not chunk the output.
`static byte[]` `encodeBase64(byte[] binaryData, boolean isChunked)` Encodes binary data using the base64 algorithm, optionally chunking the output into 76 character blocks.
`static byte[]` `encodeBase64Chunked(byte[] binaryData)` Encodes binary data using the base64 algorithm and chunks the encoded output into 76 character blocks
`static boolean` `isArrayByteBase64(byte[] arrayOctect)` Tests a given byte array to see if it contains only valid characters within the Base64 alphabet.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Base64

    public Base64()

Method Detail

### isArrayByteBase64

    public static boolean isArrayByteBase64(byte[] arrayOctect)

  Tests a given byte array to see if it contains only valid characters within the Base64 alphabet.

  Parameters:
    `arrayOctect` - byte array to test
  Returns:
    `true` if all bytes are valid characters in the Base64 alphabet or if the byte array is empty; false, otherwise

### encodeBase64

    public static byte[] encodeBase64(byte[] binaryData)

  Encodes binary data using the base64 algorithm but does not chunk the output.

  Parameters:
    `binaryData` - binary data to encode
  Returns:
    Base64 characters

### encodeBase64Chunked

    public static byte[] encodeBase64Chunked(byte[] binaryData)

  Encodes binary data using the base64 algorithm and chunks the encoded output into 76 character blocks

  Parameters:
    `binaryData` - binary data to encode
  Returns:
    Base64 characters chunked in 76 character blocks

### decode

    public byte[] decode(byte[] pArray)

  Decodes a byte[] containing containing characters in the Base64 alphabet.

  Parameters:
    `pArray` - A byte array containing Base64 character data
  Returns:
    a byte array containing binary data

### encodeBase64

    public static byte[] encodeBase64(byte[] binaryData,
                                      boolean isChunked)

  Encodes binary data using the base64 algorithm, optionally chunking the output into 76 character blocks.

  Parameters:
    `binaryData` - Array containing binary data to encode.
    `isChunked` - if `true` this encoder will chunk the base64 output into 76 character blocks
  Returns:
    Base64-encoded data.

### decodeBase64

    public static byte[] decodeBase64(byte[] base64Data)

  Decodes Base64 data into octects

  Parameters:
    `base64Data` - Byte array containing Base64 data
  Returns:
    Array containing decoded data.

### encode

    public byte[] encode(byte[] pArray)

  Encodes a byte[] containing binary data, into a byte[] containing characters in the Base64 alphabet.

  Parameters:
    `pArray` - a byte array containing binary data
  Returns:
    A byte array containing only Base64 character data