相关链接:
Public Shared Function per15To18(ByVal perIDSrc As String) As String
Dim [iS] As Integer = 0
'加权因子常数
Dim iW As Integer() = New Integer() {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2}
'校验码常数
Dim LastCode As String = "10X98765432"
'新身份证号
Dim perIDNew As String
perIDNew = perIDSrc.Substring(0, 6)
perIDNew += "19"
perIDNew += perIDSrc.Substring(6, 9)
For i As Integer = 0 To 16
'进行加权求和
[iS] += Integer.Parse(perIDNew.Substring(i, 1)) * iW(i)
Next
'取模运算,得到模值
Dim iY As Integer = [iS] Mod 11
'从LastCode中取得以模为索引号的值,加到身份证的最后一位,即为新身份证号。
perIDNew += LastCode.Substring(iY, 1)
Return perIDNew
End Function
public static string per15To18(string perIDSrc)
{
int iS = 0;
//加权因子常数
int[] iW=new int[]{7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2};
//校验码常数
string LastCode="10X98765432";
//新身份证号
string perIDNew;
perIDNew=perIDSrc.Substring(0,6);
perIDNew += "19";
perIDNew += perIDSrc.Substring(6,9);
//进行加权求和
for( int i=0; i<17; i++)
{
iS += int.Parse(perIDNew.Substring(i,1)) * iW[i];
}
//取模运算,得到模值
int iY = iS%11;
//从LastCode中取得以模为索引号的值,加到身份证的最后一位,即为新身份证号。
perIDNew += LastCode.Substring(iY,1);
return perIDNew;
}
分享到:
相关推荐
.net 递归算法.net 递归算法.net 递归算法.net 递归算法.net 递归算法.net 递归算法.net 递归算法.net 递归算法
asp.net 算法题
.net的算法 递归算法 可以好好理解
java实现的18位身份证格式验证算法
vb.net常用算法
本资源提供了在.net框架下的DES加密算法的代码,思想,具有良好的可视化操作界面,和清晰的des算法思想的思路
.NET加密算法/密钥算法 详解 doc .NET加密算法/密钥算法 详解 doc
非常实用的A*算法源码 用VB.NET实现
C#实现的18位身份证格式验证算法.txt
c#的一些面试笔试必备题目,及各类重要算法,十分适合应届生求职,面试宝典
asp.net做的大转盘,自己写的概率算法,自己觉得挺好!
.NET脏字过滤算法代码
回归算法回归算法回归算法回归算法回归算法回归算法回归算法
VB.NET写的具有可靠的算法结构程序 - 多种算法结合,方法的改进并保持代码的简易
java和.net交换加密算法(.net版本)+(java版本)
.NET短URL压缩算法,解压包包含整个项目,欢迎下载研究。
使用.net实现常用的经典排序算法,以及对它们性能的比较及适用情况。如希尔排序 堆排序 快速排序等。
基于关联规则的经典算法Apriori算法,进过封装以类的形式调用。
VB.Net实现des加密算法的实例 对于加密算法研究的朋友或许能够得到帮助
带加减算法的验证码 asp.net 适用 绝对适好用!