当前位置: 首页 > news >正文

利用身份证号获取生日信息

1 问题

如何利用Java程序从身份证号中获取生日信息。

2 方法

采用“截图+文字+代码”的方式描述。

//调用函数获取当前日期以及截取身份证号码中的数字
import java.util.Calendar;
import java.util.Scanner;
public class nain {
   static Scanner sc = new Scanner(System.in);
   static Calendar c=Calendar.getInstance();
   public static void main(String[] args) {
       System.out.println("请输入身份证:");
       String IDcard = sc.next();
       IDcard(IDcard);
   }
   public static void IDcard(String IDcard) {
       switch(IDcard.length()) {
           case 18:
           case 16:
//分别获取出生年月日,以及判断获取的日期是否合理。
               String year = IDcard.substring(6, 10);
               if(Integer.decode(year) <1900 && Integer.decode(year)>c.get(Calendar.YEAR))
                   System.out.println("年龄不合法");
               String month = IDcard.substring(10,12);
               if(Integer.decode(month)<1 && Integer.decode(month)>12)
                   System.out.println("身份证不合法");
               String day = IDcard.substring(12,14);
               c.set(Integer.decode(year) ,Integer.decode(month), 0);
               if(Integer.decode(day)>c.get(Calendar.DAY_OF_MONTH))
                   System.out.println("身份证不合法");
               System.out.println("您的生日为:"+year+"年"+month+"月"+day+"日");
               break;
           default:
               System.out.println("身份证不合法");
               break;
       }
   }
}

3 结语

在利用身份证号码获取生日信息时,难点在于如何分别获取身份证号码的信息,在输入身份证号码时就应该把输入的数字转换为字符串型,在获取当前日期时,在调用函数后的月份结果时从0开始的,通过身份证号不同位置的数字代表不同的信息六可以轻松计算出结果,最后不要忘记判断时期是否比较真实。

http://www.lryc.cn/news/16081.html

相关文章:

  • c++模板的简单认识
  • 真香!Linux 原来是这么管理内存的
  • 计网之IP协议和以太网
  • 华为OD机试 - 关联子串(Python) | 机试题+算法思路+考点+代码解析 【2023】
  • SpringBoot学习笔记(二)
  • 亚马逊云科技SageMaker:实现自动、可视化管理迭代
  • 汽车 Automotive > CAN Transceivers收发器选择
  • AI将如何影响程序员的未来,以及如何不被AI所替代。
  • nginx 常用配置之 pass_proxy
  • Linux中驱动模块加载方法分析
  • yarn 通过 resolutions,指定子孙依赖包版本号,解决froala-editor 版本问题
  • Elasticsearch7.8.0版本进阶——多文档操作流程
  • Scala函数式编程(第五章:函数基础、函数高级详解)
  • ZED相机快速使用指南
  • 树莓派4b配置OpenWrt联网
  • 不同语言下的定时器,你都掌握了吗?
  • 华为OD机试 - 水仙花数(Python) | 机试题+算法思路+考点+代码解析 【2023】
  • 在onBindViewHolder设置View的translation失败或错乱的问题
  • 【2.21】MySQL索引、动态规划、学习方法
  • 华为OD机试题 - 二叉树层次遍历(JavaScript)| 包含代码编写思路
  • 力扣解法汇总1140. 石子游戏 II
  • Kerberos认证原理与使用教程
  • 内存取证常见例题思路方法-volatility (没有最全 只有更全)
  • 10 种主数据模型设计示例分享,推荐收藏
  • React学习笔记
  • 【Vue源码解析】Vue虚拟dom和diff算法
  • 算法学习与填充计划---2023.2.21---夏目
  • JavaScript中怎么实现链表?
  • 多孔弹性材料中传播的膨胀波方法(Matlab代码实现)
  • 时间复杂度与空间复杂度