org.codehaus.plexus.util

Class Base64


public class Base64
extends java.lang.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.

Version:
$Id: Base64.java 5958 2007-02-28 10:29:55Z olamy $
Author:
Apache Software Foundation
Since:
1.0-dev
See Also:
RFC 2045

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.

Method Details

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

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

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

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.

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

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