delphi 15位身份证号码转18位身份证号码  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 15位身份证号码转18位身份证号码


//15位身份证转18位身份证 
//仅供参考 
Function GetIDCard(AiIDCard : String) : String; 
Const 
IDCardGene : Array[1..18] Of Integer = (7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1); 
IDCardParity : Array[0..10] Of Char = ('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'); 
ValidLen = 15; 
Var 
sIDCard : String; 
i, s : Integer; 
Begin 
Result := ''; 
s := 0; 
sIDCard := Trim(AiIDCard); 
If(Length(sIDCard)=ValidLen)Then 
Begin 
Insert('19', sIDCard, 7); 
For i := 1 To ValidLen+2 Do 
Begin 
s := s + StrToInt(sIDCard[i]) * IDCardGene[i]; 
End; 
Result := sIDCard + IDCardParity[(s Mod 11)] 
End; 
End; 

推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.054301023483276 seconds