现在的位置: 首页 > 综合 > 正文

VBNET整理软件—根据身份证号码识别出生日期,性别,生肖,搜了下网上的check不够全…自己做了下又..

2019年09月17日 ⁄ 综合 ⁄ 共 2754字 ⁄ 字号 评论关闭
Public Class Form1
    Dim y As String
    Dim m As String
    Dim d As String
    Dim sex As String
    Dim sfzh As String
    Dim after As Long
    Dim shengxiao As String
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles Button1.Click
        sfzh = testbox.Text
        On Error GoTo ErrorHandler
        ' 可能包含错误的代码
        after = CLng(sfzh)
        '判断身份证号码是不是18位
        y = Mid(after, 7, 4)
        m = Mid(after, 11, 2)
        d = Mid(after, 13, 2)
        If y < 1985 Or y > 2013 Then
            MsgBox("您的身份证号不在发受期内")
            Exit Sub
        End If
        If m = 0 Or m > 12 Then
            MsgBox("您的出生月份不对,月份不能为0或者大于12")
            Exit Sub
        End If
        If (d = 0 Or d > 31) Or (y Mod 400 = 0 And d > 29 And m = 2) Or (y Mod 
400 <> 0 And d > 28 And m = 2) Then
            MsgBox("您的出生日期出错,出生日期不能为0或超过31,并且在闰年2月不能超
过29,非闰年2月不能超过28")
        End If
        MsgBox("您的出生日期是:" + y + "年" + m + "月" + d + "日")
        Exit Sub
ErrorHandler:
        ' 用于处理错误的代码
        MsgBox("您输入的身份证号不合法")
        Exit Sub
        Resume
    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles Button2.Click
        sfzh = testbox.Text
        On Error GoTo ErrorHandler
        ' 可能包含错误的代码
        after = CLng(sfzh)
        '判断身份证号码是不是18位
        y = Mid(after, 7, 4)
        m = Mid(after, 11, 2)
        d = Mid(after, 13, 2)
        sex = Mid(after, 17, 1)
        If y < 1985 Or y > 2013 Then
            MsgBox("您的身份证号不在发受期内")
            Exit Sub
        End If
        If m = 0 Or m > 12 Then
            MsgBox("您的出生月份不对,月份不能为0或者大于12")
            Exit Sub
        End If
        If (d = 0 Or d > 31) Or (y Mod 400 = 0 And d > 29 And m = 2) Or (y Mod 
400 <> 0 And d > 28 And m = 2) Then
            MsgBox("您的出生日期出错,出生日期不能为0或超过31,并且在闰年2月不能超
过29,非闰年2月不能超过28")
        End If
        If sex Mod 2 = 0 Then
            MsgBox("您的性别是:女")
        Else
            MsgBox("您的性别是:男")
        End If
        Exit Sub
ErrorHandler:
        ' 用于处理错误的代码
        MsgBox("您输入的身份证号不合法")
        Exit Sub
        Resume
    End Sub
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As 
System.EventArgs) Handles Button3.Click
        sfzh = testbox.Text
        On Error GoTo ErrorHandler
        ' 可能包含错误的代码
        after = CLng(sfzh)
        '判断身份证号码是不是18位
        y = Mid(after, 7, 4)
        m = Mid(after, 11, 2)
        d = Mid(after, 13, 2)
        sex = Mid(after, 17, 1)
        If y < 1985 Or y > 2013 Then
            MsgBox("您的身份证号不在发受期内")
            Exit Sub
        End If
        If m = 0 Or m > 12 Then
            MsgBox("您的出生月份不对,月份不能为0或者大于12")
            Exit Sub
        End If
        If (d = 0 Or d > 31) Or (y Mod 400 = 0 And d > 29 And m = 2) Or (y Mod 
400 <> 0 And d > 28 And m = 2) Then
            MsgBox("您的出生日期出错,出生日期不能为0或超过31,并且在闰年2月不能超
过29,非闰年2月不能超过28")
        End If
        shengxiao = y Mod 12
        Select Case shengxiao
            Case 4
                MsgBox("您的生肖是:鼠")
            Case 5
                MsgBox("您的生肖是:牛")
            Case 6
                MsgBox("您的生肖是:虎")
            Case 7
                MsgBox("您的生肖是:兔")
            Case 8
                MsgBox("您的生肖是:龙")
            Case 9
                MsgBox("您的生肖是:蛇")
            Case 10
                MsgBox("您的生肖是:马")
            Case 11
                MsgBox("您的生肖是:羊")
            Case 0
                MsgBox("您的生肖是:猴")
            Case 1
                MsgBox("您的生肖是:鸡")
            Case 2
                MsgBox("您的生肖是:狗")
            Case 3
                MsgBox("您的生肖是:猪")
        End Select
        Exit Sub
ErrorHandler:
        ' 用于处理错误的代码
        MsgBox("您输入的身份证号不合法")
        Exit Sub
        Resume
    End Sub
End Class

抱歉!评论已关闭.