如何通过身份证号转换年龄(100分)

  • 主题发起人 主题发起人 sqlzy
  • 开始时间 开始时间
S

sqlzy

Unregistered / Unconfirmed
GUEST, unregistred user!
如何通过身份证号转换年龄
需要精确到年月日来转换
 
首先判断身份证号码位数(15位还是18位的),然后按照身份证编码的编码规则解析就可以了啊!比如15位的就是Copy(身份证号码,7,2)+‘年’+Copy(身份证号码,9,2)+‘月’+Copy(身份证号码,11,2)+‘日’既可以(得出的是短日期型,例如:89年12月20日);
对于18位的依次类推既可!
Copy(身份证号码,7,4)+‘年’+Copy(身份证号码,11,2)+‘月’+Copy(身份证号码,13,2)+‘日’既可以(得出的是短日期型,例如:1989年12月20日)
 
从第七位就是出生的日期,共8位,15位的身份证是6位。
 
上面说的对,通过取位来实现此功能!
 
考虑润年没,如果是润年如何处理呢
 
判断15位还是18位,分别取位,然后与当前年份相减即可。

好像只有闰年 和这个没有关系的吧

除非你要的不是年龄 是天数,那么就加一个闰年的判断 天数取出来
 
要是取天数的话要考虑闰年,如果只考虑年龄,
楼上好多解都是可以的!又学些东西
 
15位的XX年XX月XX日18位的XXXX年XX月XX日
 
不少人都做过阿 哈哈
 

Similar threads

回复
0
查看
885
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
940
DelphiTeacher的专栏
D
D
回复
0
查看
894
DelphiTeacher的专栏
D
后退
顶部