您的位置:首页 > 编程语言 > VB

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

2013-02-22 00:02 731 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: