车辆识别号(VIN)验证
//车辆识别号VIN中字母对应的数值
@SuppressWarnings({ "unchecked", "rawtypes" })
public static Hashtable htbVIN(){
Hashtable ht = new Hashtable();
ht.put("A", 1);
ht.put("B", 2);
ht.put("C", 3);
ht.put("D", 4);
ht.put("E", 5);
ht.put("F", 6);
ht.put("G", 7);
ht.put("H", 8);
ht.put("J", 1);
ht.put("K", 2);
ht.put("L", 3);
ht.put("M", 4);
ht.put("N", 5);
ht.put("P", 7);
ht.put("R", 9);
ht.put("S", 2);
ht.put("T", 3);
ht.put("U", 4);
ht.put("V", 5);
ht.put("W", 6);
ht.put("X", 7);
ht.put("Y", 8);
ht.put("Z", 9);
ht.put("1", 1);
ht.put("2", 2);
ht.put("3", 3);
ht.put("4", 4);
ht.put("5", 5);
ht.put("6", 6);
ht.put("7", 7);
ht.put("8", 8);
ht.put("9", 9);
ht.put("0", 0);
return ht;
}
//车辆识别号中顺序对应的加权系数
@SuppressWarnings({ "rawtypes", "unchecked" })
public static Hashtable htbVIN_JQS(){
Hashtable ht = new Hashtable();
ht.put(1, 8);
ht.put(2, 7);
ht.put(3, 6);
ht.put(4, 5);
ht.put(5, 4);
ht.put(6, 3);
ht.put(7, 2);
ht.put(8, 10);
ht.put(9, 0);
ht.put(10, 9);
ht.put(11, 8);
ht.put(12, 7);
ht.put(13, 6);
ht.put(14, 5);
ht.put(15, 4);
ht.put(16, 3);
ht.put(17, 2);
return ht;
}
// IN可用字符
public static String sKYZF="ABCDEFGHJKLMNPRSTUVWXYZ1234567890";
//检验车辆识别号
@SuppressWarnings("rawtypes")
public static boolean getCheckCode_VIN(String sVIN){
String sJYW = "";
boolean bl = false;
boolean blKYZF = false;
if (sVIN.length() == 17){
int iJQS=0 ,intTemp=0;
Hashtable ht = new Hashtable();
ht = htbVIN();
Hashtable htZM = new Hashtable();
htZM = htbVIN_JQS();
if(!sVIN.startsWith("L")){
bl = false;
}
try{
for (int i = 0; i < sVIN.length(); i++){
if (sKYZF.contains (sVIN.substring(i, i+1))){
blKYZF = true;
int temp1 = (int)ht.get(sVIN.substring(i, i+1));
int temp2 = (int)htZM.get(i+1);
iJQS = iJQS + temp1 * temp2;
}else{
blKYZF = false;
break;//发现不合法字符,直接退出循环
}
}
if (blKYZF){
intTemp = iJQS % 11;
if (intTemp == 10)
sJYW = "X";
else
sJYW = intTemp+"";
String temp = sVIN.charAt(8)+"";
if (sJYW.equals(temp))
bl = true;
}else{
bl = false;
}
}catch(Exception e){
bl = false;
}
}
return bl;
}
车辆识别号(VIN)验证相关推荐
- [R语言]{实例}车辆车架号VIN码校验函数
背景: 车辆识别号码(Vehicle Identification Number,简称VIN码,亦称车架号),是车辆唯一ID标识,也是保险公司用于外部数据合作的主要匹配字段. VIN码由17位字符(2 ...
- 车架号/VIN码识别——图像处理工具
VIN码识别很多时候都能有到,车架号/VIN码识别软件不仅仅能帮助工作人员录入VIN码同时分析出VIN码的含义,易泊VIN码识别软件的使用在很大程度上解决了工作人员的工作量,提高了工作效率.这款软件可 ...
- 新能源汽车车架号VIN码查询车辆信息
一.接口介绍 传入车辆识别码(车架号)VIN即可获取到车辆的品牌.型号.出厂日期.发动机类型.排量等车辆参数.广泛应用于购买新车.二手车交易和车辆维修领域. 二.功能体验 三.产品特点 四.API文档 ...
- 车架号VIN码精准查询车辆信息
一.接口介绍 通过17位win码匹配,所有可能的车辆信息,可返回指导价.车型名称.性能和外观参数.新车价和厂家价等信息.广泛应用于保险定损.汽车4S店.交警系统.购买配件.查看配件装配图和车辆维修领域 ...
- 地磅系统——车辆识别系统的自动化管理
1.车辆识别系统 经常过磅的车辆发放固定标签卡,不是经常过磅的发放临时标签卡:标签卡中写入详细的车辆信息(比如:车牌号.货物来源.货物料去向.运输单位名称等). 临时车辆称重采用人工称重方式. 持有标 ...
- 新能源汽车,车架号VIN码查询接口
一.接口介绍 传入车辆识别码(车架号)VIN即可获取到车辆的品牌.型号.出厂日期.发动机类型.排量等车辆参数.广泛应用于购买新车.二手车交易和车辆维修领域. 二.功能体验 如何进行简单的效果查看? 1 ...
- vin接口车架号vin查询车型
车架号vin接口查询,接口稳定高效 请求url:http://118.31.113.49/api/vin/v2/index?key=d7ba9fa7634764f2fd5bb81e8183ce18&a ...
- 正则表达式验证身份证号以及验证校验位的正确性
需求:给定一个字符串,从中提取出身份证号 关于验证15位和18位身份证号的正则表达式可以参考下面的内容: http://www.cppcns.com/wangluo/re/183062.html 一. ...
- Review of Vehicle Recognition Technology - 车辆识别技术综述
Review of Vehicle Recognition Technology - 车辆识别技术综述 ZHANG Qiang, LI Jiafeng, ZHUO Li Faculty of Info ...
- 小区车辆自动识别系统C语言,【碧桂园—4.0系统】智能车辆识别系统,轻松惬意出入智慧社区...
原标题:[碧桂园-4.0系统]智能车辆识别系统,轻松惬意出入智慧社区 城市交通车水马龙工作忙碌了一天是不是想尽快回到心灵的港湾处 回到家门口是不是会因为传统的门禁系统 而不顺心.尴尬 今天带您了解碧桂 ...
最新文章
- GPU服务器选购指南-思腾合力篇
- R语言在ggplot中使用变量指定柱状图的名称实战
- git编辑器选哪个_对比了3款markdown编辑器,哪一款适合你呢?来看看吧
- Android中Preference的使用以及监听事件分析
- day10 局部变量 全局变量 作用域前奏
- linux触摸板设置密码程序6,centos linux 触摸板设置
- winform窗体 小项目【安装程序】
- vb excel 整行删除_Excel中常用的批量处理都不掌握,那就真的Out了
- 微软预展 Windows Server Studio 2008 将锁定四大主要任务
- node 16位 转24位_同时将24位和32位BMP图像顺时针旋转90度
- 事件EVENT,WaitForSingleObject(),WaitForMultipleObjecct()和SignalObjectAndWait() 的使用(上)
- 如何在Unity项目中添加语音识别?
- funuiTitle-居中问题修改
- Android基础篇1:Activity
- Pytorch——对应点相乘+矩阵相乘
- 关于wow(mangos模拟器) 的物品生成器---wowItemEdit 1.0
- 台达A2/B2伺服电机编码器改功率软件
- 3ds max制作宋惠乔的教程----作者: 火星时代 来源: 火星时代
- 堆叠实验-典型配置H3C IRF
- 高并发抢红包系统红包随机金额生成算法
热门文章
- html 开源 折线图,ECharts折线图(一)
- 圆的周长,面积,球的体积和表面积
- qcalendarwidget只显示月_本周新股14只连发!明日3只新股可申购,分别是中信博、圣湘生物、瑞晟智能...
- Python下载文件的方式
- comsol移动网格_[转载]COMSOL动网格调试
- IDEA解决打开properties乱码问题
- 使用GSL库实现非线性最小二乘拟合—原理与C代码实现(VS2019)
- GMSK通信系统中频偏估计改进算法
- 斐波那契数列(循环)
- 聊天机器人系统的组成结构及关键技术