## org.python.modules
Class binascii

    java.lang.Object
      org.python.modules.binascii

    public class binascii

extends Object

The `binascii.java` module contains a number of methods to convert between binary and various ASCII-encoded binary representations. Normally, you will not use these modules directly but use wrapper modules like `uu` or `hexbin` instead, this module solely exists because bit-manipuation of large amounts of data is slow in Python.

The `binascii.java` module defines the following functions:

`a2b_uu` (string)
  Convert a single line of uuencoded data back to binary and return the binary data. Lines normally contain 45 (binary) bytes, except for the last line. Line data may be followed by whitespace.

`b2a_uu` (data)
  Convert binary data to a line of ASCII characters, the return value is the converted line, including a newline char. The length of data should be at most 45.

`a2b_base64` (string)
  Convert a block of base64 data back to binary and return the binary data. More than one line may be passed at a time.

`b2a_base64` (data)
  Convert binary data to a line of ASCII characters in base64 coding. The return value is the converted line, including a newline char. The length of data should be at most 57 to adhere to the base64 standard.

`a2b_hqx` (string)
  Convert binhex4 formatted ASCII data to binary, without doing RLE-decompression. The string should contain a complete number of binary bytes, or (in case of the last portion of the binhex4 data) have the remaining bits zero.

`rledecode_hqx` (data)
  Perform RLE-decompression on the data, as per the binhex4 standard. The algorithm uses `0x90` after a byte as a repeat indicator, followed by a count. A count of `0` specifies a byte value of `0x90`. The routine returns the decompressed data, unless data input data ends in an orphaned repeat indicator, in which case the `Incomplete` exception is raised.

`rlecode_hqx` (data)
  Perform binhex4 style RLE-compression on data and return the result.

`b2a_hqx` (data)
  Perform hexbin4 binary-to-ASCII translation and return the resulting string. The argument should already be RLE-coded, and have a length divisible by 3 (except possibly the last fragment).

`crc_hqx` (data, crc)
  Compute the binhex4 crc value of data, starting with an initial crc and returning the result.

`Error`
  Exception raised on errors. These are usually programming errors.

`Incomplete`
  Exception raised on incomplete data. These are usually not programming errors, but may be handled by reading a little more data and trying again.

The module is a line-by-line conversion of the original binasciimodule.c written by Jack Jansen, except that all mistakes and errors are my own.

Version:
  binascii.java,v 1.6 1999/02/20 11:37:07 fb Exp
Author:
  Finn Bock, bckfnn@pipmail.dknet.dk

Field Summary
`static String` `__doc__`
`static PyString` `__doc__a2b_base64`
`static PyString` `__doc__a2b_hqx`
`static PyString` `__doc__a2b_qp`
`static PyString` `__doc__a2b_uu`
`static PyString` `__doc__b2a_base64`
`static PyString` `__doc__b2a_hex`
`static PyString` `__doc__b2a_hqx`
`static PyString` `__doc__b2a_qp`
`static PyString` `__doc__b2a_uu`
`static PyString` `__doc__crc_hqx`
`static PyString` `__doc__rlecode_hqx`
`static PyString` `__doc__rledecode_hqx`
`static PyString` `a2b_hex$doc`
`static PyObject` `Error`
`static PyObject` `Incomplete`

Constructor Summary
`binascii()`

Method Summary
`static PyString` `a2b_base64(String ascii_data)` Convert a block of base64 data back to binary and return the binary data.
`static PyString` `a2b_hex(String argbuf)`
`static PyTuple` `a2b_hqx(String ascii_data)` Convert binhex4 formatted ASCII data to binary, without doing RLE-decompression.
`static PyString` `a2b_qp(PyObject[] arg, String[] kws)`
`static PyString` `a2b_uu(String ascii_data)` Convert a single line of uuencoded data back to binary and return the binary data.
`static PyString` `b2a_base64(String bin_data)` Convert binary data to a line of ASCII characters in base64 coding.
`static PyString` `b2a_hex(String argbuf)`
`static PyString` `b2a_hqx(String bin_data)` Perform hexbin4 binary-to-ASCII translation and return the resulting string.
`static PyString` `b2a_qp(PyObject[] arg, String[] kws)`
`static PyString` `b2a_uu(String bin_data)` Convert binary data to a line of ASCII characters, the return value is the converted line, including a newline char.
`static int` `crc_hqx(String bin_data, int crc)` Compute the binhex4 crc value of data, starting with an initial crc and returning the result.
`static int` `crc32(String bin_data)`
`static int` `crc32(String bin_data, long crc)`
`static PyObject` `exceptionNamespace()`
`static boolean` `getIntFlagAsBool(ArgParser ap, int index, int dflt, String errMsg)`
`static PyString` `hexlify(String argbuf)`
`static String` `rlecode_hqx(String in_data)` Perform binhex4 style RLE-compression on data and return the result.
`static String` `rledecode_hqx(String in_data)` Perform RLE-decompression on the data, as per the binhex4 standard.
`static PyString` `unhexlify(String argbuf)`

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

Field Detail

### __doc__

    public static String __doc__

### Error

    public static final PyObject Error

### Incomplete

    public static final PyObject Incomplete

### __doc__a2b_uu

    public static PyString __doc__a2b_uu

### __doc__b2a_uu

    public static PyString __doc__b2a_uu

### __doc__a2b_base64

    public static PyString __doc__a2b_base64

### __doc__b2a_base64

    public static PyString __doc__b2a_base64

### __doc__a2b_hqx

    public static PyString __doc__a2b_hqx

### __doc__rlecode_hqx

    public static PyString __doc__rlecode_hqx

### __doc__b2a_hqx

    public static PyString __doc__b2a_hqx

### __doc__rledecode_hqx

    public static PyString __doc__rledecode_hqx

### __doc__crc_hqx

    public static PyString __doc__crc_hqx

### __doc__b2a_hex

    public static PyString __doc__b2a_hex

### a2b_hex$doc

    public static PyString a2b_hex$doc

### __doc__a2b_qp

    public static final PyString __doc__a2b_qp

### __doc__b2a_qp

    public static final PyString __doc__b2a_qp

Constructor Detail

### binascii

    public binascii()

Method Detail

### exceptionNamespace

    public static PyObject exceptionNamespace()

### a2b_uu

    public static PyString a2b_uu(String ascii_data)

  Convert a single line of uuencoded data back to binary and return the binary data. Lines normally contain 45 (binary) bytes, except for the last line. Line data may be followed by whitespace.

### b2a_uu

    public static PyString b2a_uu(String bin_data)

  Convert binary data to a line of ASCII characters, the return value is the converted line, including a newline char. The length of data should be at most 45.

### a2b_base64

    public static PyString a2b_base64(String ascii_data)

  Convert a block of base64 data back to binary and return the binary data. More than one line may be passed at a time.

### b2a_base64

    public static PyString b2a_base64(String bin_data)

  Convert binary data to a line of ASCII characters in base64 coding. The return value is the converted line, including a newline char.

### a2b_hqx

    public static PyTuple a2b_hqx(String ascii_data)

  Convert binhex4 formatted ASCII data to binary, without doing RLE-decompression. The string should contain a complete number of binary bytes, or (in case of the last portion of the binhex4 data) have the remaining bits zero.

### rlecode_hqx

    public static String rlecode_hqx(String in_data)

  Perform binhex4 style RLE-compression on data and return the result.

### b2a_hqx

    public static PyString b2a_hqx(String bin_data)

  Perform hexbin4 binary-to-ASCII translation and return the resulting string. The argument should already be RLE-coded, and have a length divisible by 3 (except possibly the last fragment).

### rledecode_hqx

    public static String rledecode_hqx(String in_data)

  Perform RLE-decompression on the data, as per the binhex4 standard. The algorithm uses `0x90` after a byte as a repeat indicator, followed by a count. A count of `0` specifies a byte value of `0x90`. The routine returns the decompressed data, unless data input data ends in an orphaned repeat indicator, in which case the `Incomplete` exception is raised.

### crc_hqx

    public static int crc_hqx(String bin_data,
                              int crc)

  Compute the binhex4 crc value of data, starting with an initial crc and returning the result.

### crc32

    public static int crc32(String bin_data)

### crc32

    public static int crc32(String bin_data,
                            long crc)

### b2a_hex

    public static PyString b2a_hex(String argbuf)

### hexlify

    public static PyString hexlify(String argbuf)

### a2b_hex

    public static PyString a2b_hex(String argbuf)

### unhexlify

    public static PyString unhexlify(String argbuf)

### getIntFlagAsBool

    public static boolean getIntFlagAsBool(ArgParser ap,
                                           int index,
                                           int dflt,
                                           String errMsg)

### a2b_qp

    public static PyString a2b_qp(PyObject[] arg,
                                  String[] kws)

### b2a_qp

    public static PyString b2a_qp(PyObject[] arg,
                                  String[] kws)

Jython homepage