EAN13验证

 public static bool CheckCodeEAN13(string barCode)
        {
            if (barCode.Length != 13)
            {
                throw new Exception("条码长度不是13位");
            }
            var chceckCode = barCode[12];
            var charArray = barCode.ToCharArray();
            Array.Reverse(charArray);
            double sum = 0;
            for (int i = 1; i < 13; i++)
            {
                sum += i % 2 == 0 ? Convert.ToInt32(charArray[i].ToString()) : Convert.ToInt32(charArray[i].ToString()) * 3;
            }

            var result = Math.Ceiling(sum / 10d) * 10 - sum;
            return chceckCode.Equals(result.ToString());
        }

 

posted @ 2022-07-28 18:04  烟台西炮台  阅读(19)  评论(0编辑  收藏  举报