日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
java+身份證區(qū)域代碼 java身份證號(hào)碼

JAVA寫一個(gè)程序,要求輸入身份證號(hào)獲取所在地區(qū)代碼也就是前六位,和出生年月。

import?java.util.*;

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、成都做網(wǎng)站、雙牌網(wǎng)絡(luò)推廣、成都微信小程序、雙牌網(wǎng)絡(luò)營銷、雙牌企業(yè)策劃、雙牌品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供雙牌建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com

public?class?Yugi{

public?static?void?main(String[]?args){

Scanner?scan?=?new?Scanner(System.in);

System.out.println("輸入身份證號(hào)碼:?");

String?code?=?scan.nextLine().trim();

scan.close();

String?reg?=?"^(.{6})(.{4})(.{2}).*$";

String?a?=?code.replaceAll(reg,?"$1");

String?y?=?code.replaceAll(reg,?"$2");

String?m?=?code.replaceAll(reg,?"$3");

System.out.println("所在地區(qū)代碼:"?+?a);

System.out.println("出生年月:?"?+?y?+?",?"?+?m);

}

}

Java-18位身份證號(hào)的正則表達(dá)式。幫忙拆一下代碼。

^ 匹配字符串的開始

[1-9] 第1位:1-9

\d{5} 第2-6位:0-9

[1-9] 第7位:1-9

\d{3} 第8-10位:0-9

((0\d)|(1[0-2])):

第11-12位:(00-09)或(10-12)

(([0|1|2]\d)|3[0-1])

第13-14位:(00-29)或(30-31)

\d{3} 第15-17位:0-9

([0-9]|X)

第18位:0-9或X

$ 匹配字符串的結(jié)束

用java寫一個(gè)方法,轉(zhuǎn)入一個(gè)身份證號(hào),判斷該身份證末位是否合法

/**

* 功能:身份證的有效驗(yàn)證

*

* @param IDStr 身份證號(hào)

* @return 有效:返回"" 無效:返回String信息

* @throws NumberFormatException

* @throws ParseException

*/

public static String IDCardValidate(String IDStr) {

String errorInfo = "";// 記錄錯(cuò)誤信息

String[] ValCodeArr = { "1", "0", "x", "9", "8", "7", "6", "5", "4",

"3", "2" };

String[] Wi = { "7", "9", "10", "5", "8", "4", "2", "1", "6", "3", "7",

"9", "10", "5", "8", "4", "2" };

String Ai = "";

// ================ 號(hào)碼的長度 15位或18位 ================

if (IDStr.length() != 15 IDStr.length() != 18) {

errorInfo = "身份證號(hào)碼長度應(yīng)該為15位或18位。";

return errorInfo;

}

// =======================(end)========================

// ================ 數(shù)字 除最后以為都為數(shù)字 ================

if (IDStr.length() == 18) {

Ai = IDStr.substring(0, 17);

} else if (IDStr.length() == 15) {

Ai = IDStr.substring(0, 6) + "19" + IDStr.substring(6, 15);

}

if (isNumeric(Ai) == false) {

errorInfo = "身份證15位號(hào)碼都應(yīng)為數(shù)字 ; 18位號(hào)碼除最后一位外,都應(yīng)為數(shù)字。";

return errorInfo;

}

// =======================(end)========================

// ================ 出生年月是否有效 ================

String strYear = Ai.substring(6, 10);// 年份

String strMonth = Ai.substring(10, 12);// 月份

String strDay = Ai.substring(12, 14);// 月份

if (isDataFormat(strYear + "-" + strMonth + "-" + strDay) == false) {

errorInfo = "身份證生日無效。";

return errorInfo;

}

GregorianCalendar gc = new GregorianCalendar();

SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");

try {

if ((gc.get(Calendar.YEAR) - Integer.parseInt(strYear)) 150

|| (gc.getTime().getTime() - s.parse(

strYear + "-" + strMonth + "-" + strDay).getTime()) 0) {

errorInfo = "身份證生日不在有效范圍。";

return errorInfo;

}

} catch (NumberFormatException e) {

// TODO 自動(dòng)生成的 catch 塊

e.printStackTrace();

return errorInfo = "身份證生日無效";

} catch (ParseException e) {

// TODO 自動(dòng)生成的 catch 塊

e.printStackTrace();

return errorInfo = "身份證生日無效";

}

if (Integer.parseInt(strMonth) 12 || Integer.parseInt(strMonth) == 0) {

errorInfo = "身份證月份無效";

return errorInfo;

}

if (Integer.parseInt(strDay) 31 || Integer.parseInt(strDay) == 0) {

errorInfo = "身份證日期無效";

return errorInfo;

}

// =====================(end)=====================

// ================ 地區(qū)碼時(shí)候有效 ================

Hashtable h = GetAreaCode();

if (h.get(Ai.substring(0, 2)) == null) {

errorInfo = "身份證地區(qū)編碼錯(cuò)誤。";

return errorInfo;

}

// ==============================================

// ================ 判斷最后一位的值 ================

int TotalmulAiWi = 0;

for (int i = 0; i 17; i++) {

TotalmulAiWi = TotalmulAiWi

+ Integer.parseInt(String.valueOf(Ai.charAt(i)))

* Integer.parseInt(Wi[i]);

}

int modValue = TotalmulAiWi % 11;

String strVerifyCode = ValCodeArr[modValue];

Ai = Ai + strVerifyCode;

if (IDStr.length() == 18) {

if (Ai.equals(IDStr) == false) {

errorInfo = "身份證無效,不是合法的身份證號(hào)碼";

return errorInfo;

}

} else {

return "";

}

// =====================(end)=====================

return "";

}

身份證號(hào)碼的地區(qū)代碼分別是什么?

身份證號(hào)碼的地區(qū)代碼分別是:

1、東北地區(qū): 遼寧省|210000,吉林省|220000,黑龍江省|230000,

2、華北地區(qū):北京市|110000,天津市|120000,河北省|130000,山西省|140000,內(nèi)蒙古自治區(qū)|150000,

3、華東地區(qū): 上海市|310000,江蘇省|320000,浙江省|330000,安徽省|340000,福建省|350000,江西省|360000,山東省|370000,

4、華南地區(qū):廣東省|440000,廣西壯族自治區(qū)|450000,海南省|460000,

5、華中地區(qū): 河南省|410000,湖北省|420000,湖南省|430000,

6、西北地區(qū): 陜西省|610000,甘肅省|620000,青海省|630000,寧夏回族自治區(qū)|640000,新疆維吾爾自治區(qū)|650000,

7、西南地區(qū): 四川省|510000,貴州省|520000,云南省|530000,西藏自治區(qū)|540000,重慶市|500000;

8、特別地區(qū):臺(tái)灣地區(qū)(886)|710000,香港特別行政區(qū)(852)|810000,澳門特別行政區(qū)(853)|820000。

擴(kuò)展資料:

一、身份證號(hào)碼是我國為每個(gè)公民從出生之日起編定的唯一的、終身不變的身份代碼,也是證明持有人身份的唯一證件。

1、前1、2位數(shù)字表示:所在省份的代碼;

2、第3、4位數(shù)字表示:所在城市的代碼;

3、第5、6位數(shù)字表示:所在區(qū)縣的代碼;

4、第7~14位數(shù)字表示:出生年、月、日;

5、第15、16位數(shù)字表示:所在地的派出所的代碼;

6、第17位數(shù)字表示性別:奇數(shù)表示男性,偶數(shù)表示女性;

7、第18位數(shù)字是校檢碼:用來檢驗(yàn)身份證的正確性。校檢碼可以是0~10的數(shù)字,10用x表示。

二、一些人的尾號(hào)變成了X,這部分人在工作生活中,例如去銀行存取錢、去汽車公司租賃汽車或者報(bào)名參加考試等等過程中,往往不被檢驗(yàn)者理解,認(rèn)為是假身份證,這樣的誤會(huì)給很多人的生活帶來不便。X的意思其實(shí)是10,只不過用羅馬數(shù)字代替了而已,如果不用羅馬數(shù)字代替的話,那么身份證號(hào)將會(huì)變成19位數(shù)了。

參考資料:百度百科_居民身份證號(hào)碼


文章名稱:java+身份證區(qū)域代碼 java身份證號(hào)碼
分享URL:http://www.dlmjj.cn/article/dogosoi.html