最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

二代身份證驗證示例

 更新時間:2014年02月27日 14:38:11   作者:  
這篇文章主要介紹了二代身份證驗證示例,需要的朋友可以參考下

(一)18身份證號碼的結(jié)構(gòu)

公民身份號碼是特征組合碼,由十七位數(shù)字本體碼和一位校驗碼組成。

排列順序從左至右依次為:六位數(shù)字地址碼,八位數(shù)字出生日期碼,三位數(shù)字順序碼和一位校驗碼。
1、地址碼
表示編碼對象常住戶口所在縣(市、旗、區(qū))的行政區(qū)域劃分代碼,按GB/T2260的規(guī)定執(zhí)行。
2、出生日期碼
表示編碼對象出生的年、月、日,按GB/T7408的規(guī)定執(zhí)行,年、月、日代碼之間不用分隔符。
3、順序碼
表示在同一地址碼所標識的區(qū)域范圍內(nèi),對同年、同月、同日出生的人編定的順序號,順序碼的奇數(shù)分配給男性,偶數(shù)分配給女性。
4、校驗碼計算步驟

(1)十七位數(shù)字本體碼加權(quán)求和公式
S = Sum(Ai * Wi), i = 0, ... , 16 ,先對前17位數(shù)字的權(quán)求和
Ai:表示第i位置上的身份證號碼數(shù)字值(0~9)
Wi:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 (表示第i位置上的加權(quán)因子)
(2)計算模
Y = mod(S, 11)

(3)根據(jù)模,查找得到對應(yīng)的校驗碼
Y: 0 1 2 3 4 5 6 7 8 9 10
校驗碼: 1 0 X 9 8 7 6 5 4 3 2

(二)根據(jù)17位數(shù)字本體碼獲取最后一位校驗碼程序?qū)嵗?/P>

復(fù)制代碼 代碼如下:

public class Id18 {
    int[] weight={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};    //十七位數(shù)字本體碼權(quán)重
    char[] validate={ '1','0','X','9','8','7','6','5','4','3','2'};    //mod11,對應(yīng)校驗碼字符值   

    public char getValidateCode(String id17){
        int sum=0;
        int mode=0;
        for(int i=0;i<id17.length();i++){
            sum=sum+Integer.parseInt(String.valueOf(id17.charAt(i)))*weight[i];
        }
        mode=sum%11;
        return validate[mode];
    }

    public static void main(String[] args){
        Id18 test=new Id18();
        System.out.println("該身份證驗證碼:"+test.getValidateCode("14230219700101101"));    //該身份證校驗碼:3
    }
}

(三)說明

1.程序可以根據(jù)已有的17位數(shù)字本體碼,獲取對應(yīng)的驗證碼。

2.該程序可以剔除驗證碼不正確的身份證號碼。

3.15位的身份證出生年份采用年份后2位,沒有最后1位校驗碼。

4.完整的身份證18位,最后一位校驗位可能是非數(shù)字。我們的一個項目,數(shù)據(jù)庫保存前17位數(shù)字,這樣對應(yīng)一些SQL語句(比如inner join)有加速作用的?。?!

相關(guān)文章

  • Java中List.of()和Arrays.asList()的區(qū)別及原因分析

    Java中List.of()和Arrays.asList()的區(qū)別及原因分析

    這篇文章主要介紹了Java中List.of()和Arrays.asList()的區(qū)別及原因分析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 基于Java生成GUID的實現(xiàn)方法

    基于Java生成GUID的實現(xiàn)方法

    本篇文章是對Java生成GUID的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • IDEA中Jar包的制作和使用方法

    IDEA中Jar包的制作和使用方法

    這篇文章主要介紹了IDEA的Jar包的制作和使用方法,文中補充介紹了idea的pom依賴配置后,不會自動下載jar包的解決辦法,感興趣的朋友跟隨小編一起看看吧
    2025-04-04
  • Java Socket實現(xiàn)傳輸壓縮對象的方法示例

    Java Socket實現(xiàn)傳輸壓縮對象的方法示例

    這篇文章主要介紹了Java Socket實現(xiàn)傳輸壓縮對象的方法,結(jié)合具體實例形式分析了java socket針對數(shù)據(jù)的壓縮、傳輸、接收、解壓縮等操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2017-06-06
  • 詳解Java中Method的Invoke方法

    詳解Java中Method的Invoke方法

    這篇文章主要介紹了詳解Java中Method的Invoke方法,需要的朋友可以參考下
    2017-10-10
  • springcloud如何使用Feign后臺內(nèi)部傳遞MultipartFile

    springcloud如何使用Feign后臺內(nèi)部傳遞MultipartFile

    這篇文章主要介紹了springcloud如何使用Feign后臺內(nèi)部傳遞MultipartFile,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • @RequestMapping對不同參數(shù)的接收方式示例詳解

    @RequestMapping對不同參數(shù)的接收方式示例詳解

    Spring?MVC框架中,@RequestMapping注解用于映射URL到控制器方法,不同的參數(shù)類型如簡單參數(shù)、實體參數(shù)、數(shù)組參數(shù)、集合參數(shù)、日期參數(shù)和JSON參數(shù),本文給大家介紹@RequestMapping對不同參數(shù)的接收方式,感興趣的朋友一起看看吧
    2024-10-10
  • 通過String.intern()方法淺談堆中常量池

    通過String.intern()方法淺談堆中常量池

    這篇文章主要介紹了通過String.intern()方法淺談堆中常量池,在JDK7之前,字符串常量是存在永久帶Perm 區(qū)的,JDK7開始在將常量池遷移到堆中,這個變化也導(dǎo)致了String的新特性,下面我們慢慢進行介紹。,需要的朋友可以參考下
    2019-06-06
  • SpringBoot中Shiro緩存使用Redis、Ehcache的方法

    SpringBoot中Shiro緩存使用Redis、Ehcache的方法

    這篇文章主要介紹了SpringBoot中Shiro緩存使用Redis、Ehcache的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • 基于SpringBoot實現(xiàn)用戶身份驗證工具

    基于SpringBoot實現(xiàn)用戶身份驗證工具

    這篇文章主要介紹了基于SpringBoot實現(xiàn)的用戶身份驗證工具,非常不錯,具有參考借鑒價值 ,需要的朋友可以參考下
    2018-04-04

最新評論

四子王旗| 宜宾县| 长兴县| 襄樊市| 临沭县| 含山县| 乐亭县| 邓州市| 平谷区| 怀化市| 沈阳市| 安岳县| 永和县| 洪泽县| 武隆县| 施秉县| 山丹县| 双峰县| 慈溪市| 淄博市| 九江市| 太和县| 津市市| 荥阳市| 鄢陵县| 新邵县| 瑞安市| 龙陵县| 岳阳县| 黎城县| 伊宁县| 甘洛县| 莱州市| 呼和浩特市| 特克斯县| 灵武市| 麻阳| 酒泉市| 潢川县| 梓潼县| 沿河|