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] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送