org.apache.commons.codec.binary
Class BinaryCodec

java.lang.Object
  extended by org.apache.commons.codec.binary.BinaryCodec
All Implemented Interfaces:
BinaryDecoder, BinaryEncoder, Decoder, Encoder

public class BinaryCodec
extends Object
implements BinaryDecoder, BinaryEncoder

Converts between byte arrays and strings of "0"s and "1"s.

This class is immutable and thread-safe.

TODO: may want to add more bit vector functions like and/or/xor/nand TODO: also might be good to generate boolean[] from byte[] et cetera.

Since:
1.3
Version:
$Id: BinaryCodec.html 889935 2013-12-11 05:05:13Z ggregory $

Constructor Summary
BinaryCodec()
           
 
Method Summary
 byte[] decode(byte[] ascii)
          Decodes a byte array where each byte represents an ASCII '0' or '1'.
 Object decode(Object ascii)
          Decodes a byte array where each byte represents an ASCII '0' or '1'.
 byte[] encode(byte[] raw)
          Converts an array of raw binary data into an array of ASCII 0 and 1 characters.
 Object encode(Object raw)
          Converts an array of raw binary data into an array of ASCII 0 and 1 chars.
static byte[] fromAscii(byte[] ascii)
          Decodes a byte array where each byte represents an ASCII '0' or '1'.
static byte[] fromAscii(char[] ascii)
          Decodes a char array where each char represents an ASCII '0' or '1'.
static byte[] toAsciiBytes(byte[] raw)
          Converts an array of raw binary data into an array of ASCII 0 and 1 character bytes - each byte is a truncated char.
static char[] toAsciiChars(byte[] raw)
          Converts an array of raw binary data into an array of ASCII 0 and 1 characters.
static String toAsciiString(byte[] raw)
          Converts an array of raw binary data into a String of ASCII 0 and 1 characters.
 byte[] toByteArray(String ascii)
          Decodes a String where each char of the String represents an ASCII '0' or '1'.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BinaryCodec

public BinaryCodec()
Method Detail

encode

public byte[] encode(byte[] raw)
Converts an array of raw binary data into an array of ASCII 0 and 1 characters.

Specified by:
encode in interface BinaryEncoder
Parameters:
raw - the raw binary data to convert
Returns:
0 and 1 ASCII character bytes one for each bit of the argument
See Also:
BinaryEncoder.encode(byte[])

encode

public Object encode(Object raw)
              throws EncoderException
Converts an array of raw binary data into an array of ASCII 0 and 1 chars.

Specified by:
encode in interface Encoder
Parameters:
raw - the raw binary data to convert
Returns:
0 and 1 ASCII character chars one for each bit of the argument
Throws:
EncoderException - if the argument is not a byte[]
See Also:
Encoder.encode(Object)

decode

public Object decode(Object ascii)
              throws DecoderException
Decodes a byte array where each byte represents an ASCII '0' or '1'.

Specified by:
decode in interface Decoder
Parameters:
ascii - each byte represents an ASCII '0' or '1'
Returns:
the raw encoded binary where each bit corresponds to a byte in the byte array argument
Throws:
DecoderException - if argument is not a byte[], char[] or String
See Also:
Decoder.decode(Object)

decode

public byte[] decode(byte[] ascii)
Decodes a byte array where each byte represents an ASCII '0' or '1'.

Specified by:
decode in interface BinaryDecoder
Parameters:
ascii - each byte represents an ASCII '0' or '1'
Returns:
the raw encoded binary where each bit corresponds to a byte in the byte array argument
See Also:
Decoder.decode(Object)

toByteArray

public byte[] toByteArray(String ascii)
Decodes a String where each char of the String represents an ASCII '0' or '1'.

Parameters:
ascii - String of '0' and '1' characters
Returns:
the raw encoded binary where each bit corresponds to a byte in the byte array argument
See Also:
Decoder.decode(Object)

fromAscii

public static byte[] fromAscii(char[] ascii)
Decodes a char array where each char represents an ASCII '0' or '1'.

Parameters:
ascii - each char represents an ASCII '0' or '1'
Returns:
the raw encoded binary where each bit corresponds to a char in the char array argument

fromAscii

public static byte[] fromAscii(byte[] ascii)
Decodes a byte array where each byte represents an ASCII '0' or '1'.

Parameters:
ascii - each byte represents an ASCII '0' or '1'
Returns:
the raw encoded binary where each bit corresponds to a byte in the byte array argument

toAsciiBytes

public static byte[] toAsciiBytes(byte[] raw)
Converts an array of raw binary data into an array of ASCII 0 and 1 character bytes - each byte is a truncated char.

Parameters:
raw - the raw binary data to convert
Returns:
an array of 0 and 1 character bytes for each bit of the argument
See Also:
BinaryEncoder.encode(byte[])

toAsciiChars

public static char[] toAsciiChars(byte[] raw)
Converts an array of raw binary data into an array of ASCII 0 and 1 characters.

Parameters:
raw - the raw binary data to convert
Returns:
an array of 0 and 1 characters for each bit of the argument
See Also:
BinaryEncoder.encode(byte[])

toAsciiString

public static String toAsciiString(byte[] raw)
Converts an array of raw binary data into a String of ASCII 0 and 1 characters.

Parameters:
raw - the raw binary data to convert
Returns:
a String of 0 and 1 characters representing the binary data
See Also:
BinaryEncoder.encode(byte[])


Copyright © 2002-2013 The Apache Software Foundation. All Rights Reserved.