⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ean128ccheck10.java

📁 遗传算法改进神经网络源程序 该小程序可以添加条形码功能到你的网页或者applet上,这个applet把大写字母和数字转换为标准的条形码。
💻 JAVA
字号:
// Decompiled by DJ v3.7.7.81 Copyright 2004 Atanas Neshkov  Date: 2007-11-23 16:17:25
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) 
// Source File Name:   EAN128CCheck10.java

package com.bokai.barcodes;


// Referenced classes of package com.bokai.barcodes:
//            EAN128C, Barcode, BarcodeDataTriplet, BarcodeSpec, 
//            BarcodeSymbol, EAN128

class EAN128CCheck10 extends EAN128C
{

    EAN128CCheck10()
    {
        super.bdType = 37;
        super.bdTypeName = "EAN/UCC-128 C (Check 10)";
        super.bdStyle = 0x80b31a;
        _ccAI = 0;
        _defaultAI = null;
    }

    char calcCheckChar(char ac[], int i)
    {
        return EAN128.s_C128CheckChar(2, true, ac, 0, i);
    }

    char calcInnerCheckChar(char ac[], int i)
    {
        return BarcodeSpec.ItfMod10CheckChar(ac, _ccAI, i - _ccAI);
    }

    char[] filterGetText(char ac[], char ac1[], int i, long l)
    {
        if(i == 2 && _ccAI > 0)
        {
            int j = ac.length - 1 - _ccAI;
            char ac3[] = new char[j + 2 + _ccAI];
            ac3[0] = '(';
            int k;
            for(k = 0; k < _ccAI; k++)
                ac3[k + 1] = ac[k];

            ac3[k + 1] = ')';
            System.arraycopy(ac, _ccAI, ac3, _ccAI + 2, j);
            return ac3;
        } else
        {
            char ac2[] = super.filterGetText(ac, ac1, i, l);
            return ac2;
        }
    }

    BarcodeDataTriplet getDefaultFullData()
    {
        char ac[] = null;
        boolean flag = false;
        char ac1[] = null;
        char ac2[] = null;
        int i = super.bdTextLen - 1 - 1;
        ac1 = new char[i];
        for(int j = 0; j < i; j++)
            if(j < _ccAI)
                ac1[j] = _defaultAI[j];
            else
                ac1[j] = '0';

        ac2 = validateData(ac1, i);
        return new BarcodeDataTriplet(ac2, ac1, ac);
    }

    char[] validateData(char ac[], int i)
    {
        int j = super.bdTextLen;
        if((super.bdStyle & 4) != 0)
        {
            j = super.bdTextLen;
            if(i > j)
                return null;
            if(i < j - 2)
                return null;
        } else
        if(i % 2 == 0)
            j = i + 1;
        else
            j = i + 2;
        for(int k = 0; k < j - 2; k++)
            if(ac[k] < '0' || ac[k] > '9')
                return null;

        char c = calcInnerCheckChar(ac, j - 2);
        if(i >= j - 1 && c != ac[j - 2])
            return null;
        char ac1[] = new char[j];
        System.arraycopy(ac, 0, ac1, 0, j - 2);
        ac1[j - 2] = c;
        char c1 = calcCheckChar(ac1, j - 1);
        if(i == j && c1 != ac[j - 1])
        {
            return null;
        } else
        {
            ac1[j - 1] = c1;
            return ac1;
        }
    }

    static final String name = "EAN/UCC-128 C (Check 10)";
    int _ccAI;
    char _defaultAI[];
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -