问题描述
15位身份证转18位身份证代码,代码简洁明了,易懂
解决方案
解决方案二:
15位和18位规则不一样的,无法确认的地方你打算怎么处理?
解决方案三:
///<summary>///身份证ID15转18位///</summary>///<paramname="id">15位身份证号</param>///<returns>18位身份证号</returns>publicstringPersonID15To18(stringid){intiS=0;int[]iW=newint[]{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};//加权因子常数stringLastCode="10X98765432";//校验码常数stringnewId;//新身份证号newId=id.Substring(0,6);newId+="19";//填在第6位及第7位上填上‘1’,‘9’两个数字newId+=id.Substring(6,9);//进行加权求和for(inti=0;i<17;i++){iS+=int.Parse(newId.Substring(i,1))*iW[i];}intiY=iS%11;//取模运算,得到模值newId+=LastCode.Substring(iY,1);//从LastCode中取得以模为索引号的值,加到身份证的最后一位,即为新身份证号。returnnewId;}
解决方案四:
这有规律可以转的吗?
解决方案五:
解决方案六:
我记得15位是省去年份的前2位,这个就没办法转了
解决方案七:
转啥??没办法转,因为顺序码(身---------------份----------------证第十五位到十七位)是不确定滴,他是根据你在公*----------------------a'b'c安信息的录入信息的先后决定,如果你是旧版01,也许你在办新证滴时候就排到18去了额什么东西,非法信息,哎呦,csdn被办------------------证滴给玩怕了,新---------------------------------------------证都是非法词汇了