当前位置: 首页 > 图文教程 > 网络编程 > ASP > 将身份证从15位升级为18位的函数

ASP
生成像资源管理器一样的树形目录
将连接数据库的代码隐藏在DLL中
ASP中从数据库读取二进制文件数据代码
asp查询xml的代码,实现了无刷新、模糊查询功能
一个asp函数, 解决SQL Injection漏洞
在ASP中利用COM组件开发Web应用程序
关于如何利用COM+,来提高ASP执行权限的问题!
升级MD5.ASP,打造完全动态不重复的安全加密代码
ASP安全检测与过滤函数SafeCheck
在ASP中,用JScript脚本实现分页的另类办法
查看服务器Application/Session变量工具
自己写的一个简单ASP调用存储过程查询
ASP登陆验证页应做的安全问题
使用ASP与javascript配合实现多个复选框数据关联显示
Windows 2003下不注册组件用ASP发邮件
数据分页方法新思路,速度非常快!
ASP程序中同一个用户不允许同时登陆两次
分栏显示记录集的表格演示,并实现了分页
关于Adodb.Stream的写数据库数据到客户端文件的实践
将ASP的Debug变得简单的两个函数

ASP 中的 将身份证从15位升级为18位的函数


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 243 ::
收藏到网摘: n/a

 

    '将身份证从15位升级为18位的函数

    Function GetNewIDCard(ByVal IDCard As String) As String
        Dim i, S As Integer
        Dim Wi() As String = Split("7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1", ",")
        Dim Wf() As String = Split("1,0,X,9,8,7,6,5,4,3,2", ",")
        If Mid(IDCard, 7, 2) >= Mid(Now.AddYears(-14).Year, 3, 2) Then
            IDCard = Mid(IDCard, 1, 6) & "18" & Mid(IDCard, 7, 9)
        Else
            IDCard = Mid(IDCard, 1, 6) & "19" & Mid(IDCard, 7, 9)
        End If
        For i = 0 To 16
            S += Wi(i) * Mid(IDCard, i + 1, 1)
        Next
        Return IDCard & Wf(S Mod 11)
    End Function