org.python.modules
Class binascii

java.lang.Object
  extended by 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, [email protected]

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