Java プログラムメモ


トップ

バーコードの Check Digit を計算する

JAN8 は 7 桁の文字列から JAN13 は 12 桁の文字列からそれぞれ Check Digit を作成します。

コード

public static String makeCheckDigit(String barcode) { int initPosition1 = 0; int initPosition2 = 0; if (barcode.length() == 12) { initPosition1 = 1; initPosition2 = 0; } else if (barcode.length() == 7) { initPosition1 = 0; initPosition2 = 1; } else { throw new IllegalArgumentException( "長さが不正です。[" + barcode + "]"); } int sum = 0; for (int i = initPosition1; i < barcode.length(); i += 2) { sum += Integer.parseInt(barcode.substring(i, i + 1)); } sum *= 3; for (int i = initPosition2; i < barcode.length(); i += 2) { sum += Integer.parseInt(barcode.substring(i, i + 1)); } String placeOfOne = String.valueOf(sum).substring( String.valueOf(sum).length() - 1); if (placeOfOne.equals("0")) { return placeOfOne; } else { return String.valueOf(10 - Integer.parseInt(placeOfOne)); } }

SEO [PR] おまとめローン Windows7 冷え性対策 動画 掲示板 レンタルサーバー ライブチャット SEO