www.pudn.com > 使用 Java 读取条形码代码文件.rar > UPCParser.java
package com.jmart.barcode;
/**
* Parses a String based on the UPC barcode standards found at http://www.upc.com
*/
public class UPCParser {
public static String getItemNumber(String upc)
{
return upc.substring(6,11);
}
public static String getManufacturerID(String upc)
{
return upc.substring(0,6);
}
public static boolean isValidUPC(String upc)
{
if (upc.length() != 12)
return false;
try
{
int checkNum = Integer.parseInt(upc.substring(11,12));
int int1 = Integer.parseInt(upc.substring(0,1));
int int2 = Integer.parseInt(upc.substring(1,2));
int int3 = Integer.parseInt(upc.substring(2,3));
int int4 = Integer.parseInt(upc.substring(3,4));
int int5 = Integer.parseInt(upc.substring(4,5));
int int6 = Integer.parseInt(upc.substring(5,6));
int int7 = Integer.parseInt(upc.substring(6,7));
int int8 = Integer.parseInt(upc.substring(7,8));
int int9 = Integer.parseInt(upc.substring(8,9));
int int10 = Integer.parseInt(upc.substring(9,10));
int int11 = Integer.parseInt(upc.substring(10,11));
int sum1 = int1 + int3 + int5 + int7 + int9 + int11;
sum1 *= 3;
sum1 += int2 + int4 + int6 + int8 + int10;
return ( (sum1 + checkNum) % 10 == 0);
}
catch (NumberFormatException ex)
{
return false;
}
}
}