條形碼 Ean13 的校驗方法

 這幾天在研究條形碼  這是ean13的校驗碼計算方式 不然生成條形碼怕是要崩啊 哈哈

 /**
     * 校驗輸入的是否位12個數字
     *
     * @param Stringtemp  需要生成的12個數字  如“123456789111”
     */
    private static boolean Ean13Check(String Stringtemp)
    {

        int length=Stringtemp.length();

        if (length!=12){
            return false;
        }

        return true;
    }

 /**
     * 校驗輸入的是否位12個數字
     *
     * @param Stringtemp  需要生成的12個數字  如“123456789111”
     *
     *返回值:將校驗位加上並返回  如“1234567898”
     */
    private static String  Ean13Creat(String Stringtemp)
    {

        int[] datas=new int[12];//輸入的12位
        for (int i=0;i<12;i++){
            int a=Stringtemp.charAt(i)-48;
            datas[i]=a;
        }
        //奇數位和&&偶數位和
        int p=datas[0]+datas[2]+datas[4]+datas[6]+datas[8]+datas[10];
        int q=datas[1]+datas[3]+datas[5]+datas[7]+datas[9]+datas[11];
        //校驗位
        int tes =10-((p+3*q)%10);
        if (tes==10){
            tes=0;
        }

        Stringtemp+=tes;

        return Stringtemp;
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章