Java怎樣實現解析身份證號

身份證號解析,demo測試

/**
 * 身份證號解析demo
 * */
public class TestArea {
	public static void main(String[] args) {
		System.out.println("測試");
		// 需求:身份證號碼,地區號+生日:年+月+日+性別
		String cardNo = "61011320010505241X";
		String area = ""; // 前6位,國家標準(國標GB)
		// 截串,身份證18位,固有長度
		area = cardNo.substring(0, 6);
		System.out.println("區域編碼:" + area);
		
		String birthday = "";
		birthday = cardNo.substring(6, 14);
		System.out.println("出生年月:" + birthday);
		
		
		int year; // 從中間變量birthday來截取
		year = Integer.parseInt(birthday.substring(0, 4)); // 字符串轉成整數
		System.out.println(year);

		int month;
		System.out.println(birthday.substring(4, 6));
		month = Integer.parseInt(birthday.substring(4, 6));
		System.out.println(month);
		
		int day;
		day = Integer.parseInt(birthday.substring(6));
		System.out.println(day);

		
		System.out.println("" + year + month + day);
		System.out.println("生日:"+year + "年" + month + "月" + day + "日");
		
		//倒數第二位
		String sex = "";
		sex = cardNo.substring( cardNo.length() -2 , cardNo.length() -1);
		System.out.println(sex);

	}
}
相關文章
相關標籤/搜索