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; 
	} 
} 
}