byte[] abyData = new byte[8];
byte[] abyData = new byte[4];
    public int extractIntData(byte[] pachSourceData, int nMaxBytes,                              MutableInt pnConsumedBytes) {        switch (pszFormatString.charAt(0)) {        case 'A':        case 'I':        case 'R':        case 'S':        case 'C':            String dataString = extractStringData(pachSourceData,                    nMaxBytes,                    pnConsumedBytes);            if (dataString.equals("")) {                return 0;            }            try {                return Double.valueOf(dataString).intValue();            } catch (NumberFormatException nfe) {                if (Debug.debugging("iso8211")) {                    Debug.output("DDFSubfieldDefinition.extractIntData: number format problem: "                            + dataString);                }                return 0;            }        case 'B':        case 'b':            byte[] abyData = new byte[8];            if (nFormatWidth > nMaxBytes) {                Debug.error("DDFSubfieldDefinition: format width is greater than max bytes for int");                return 0;            }            if (pnConsumedBytes != null) {                pnConsumedBytes.value = nFormatWidth;            }            System.arraycopy(pachSourceData, 0, abyData, 0, nFormatWidth);            // Interpret the bytes of data.            switch (eBinaryFormat) {            case DDFBinaryFormat.UInt:            case DDFBinaryFormat.SInt:            case DDFBinaryFormat.FloatReal:                return (int) MoreMath.BuildIntegerBE(abyData);            // case DDFBinaryFormat.UInt:            // if (nFormatWidth == 4)            // return((int) *((GUInt32 *) abyData));            // else if (nFormatWidth == 1)            // return(abyData[0]);            // else if (nFormatWidth == 2)            // return(*((GUInt16 *) abyData));            // else {            // CPLAssert(false);            // return 0;            // }            // case DDFBinaryFormat.SInt:            // if (nFormatWidth == 4)            // return(*((GInt32 *) abyData));            // else if (nFormatWidth == 1)            // return(*((signed char *) abyData));            // else if (nFormatWidth == 2)            // return(*((GInt16 *) abyData));            // else {            // CPLAssert(false);            // return 0;            // }            // case DDFBinaryFormat.FloatReal:            // if (nFormatWidth == 4)            // return((int) *((float *) abyData));            // else if (nFormatWidth == 8)            // return((int) *((double *) abyData));            // else {            // CPLAssert(false);            // return 0;            // }            case DDFBinaryFormat.NotBinary:            case DDFBinaryFormat.FPReal:            case DDFBinaryFormat.FloatComplex:                return 0;            }            break;        // end of 'b'/'B' case.        default:            return 0;        }        return 0;    }