<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-71  評(píng)論-5  文章-0  trackbacks-0
      /**
             * 校驗(yàn)銀行卡卡號(hào)
             * 
    @param cardId
             * 
    @return
             
    */
            public static boolean checkBankCard(String cardId) {
                     char bit = getBankCardCheckCode(cardId.substring(0, cardId.length() - 1));
                     if(bit == 'N'){
                         return false;
                     }
                     return cardId.charAt(cardId.length() - 1) == bit;
            }
           
            /**
             * 從不含校驗(yàn)位的銀行卡卡號(hào)采用 Luhm 校驗(yàn)算法獲得校驗(yàn)位
             * 
    @param nonCheckCodeCardId
             * 
    @return
             
    */
            public static char getBankCardCheckCode(String nonCheckCodeCardId){
                if(nonCheckCodeCardId == null || nonCheckCodeCardId.trim().length() == 0
                        || !nonCheckCodeCardId.matches("\\d+")) {
                    //如果傳的不是數(shù)據(jù)返回N
                    return 'N';
                }
                char[] chs = nonCheckCodeCardId.trim().toCharArray();
                int luhmSum = 0;
                for(int i = chs.length - 1, j = 0; i >= 0; i--, j++) {
                    int k = chs[i] - '0';
                    if(j % 2 == 0) {
                        k *= 2;
                        k = k / 10 + k % 10;
                    }
                    luhmSum += k;           
                }
                return (luhmSum % 10 == 0) ? '0' : (char)((10 - luhmSum % 10) + '0');
            }



       //   測(cè)試代碼


    public class ResTest {
    public static void main(String[] args) {
       String reg = "18632116655";
       String data = JsonUtil.toJson(reg);
       String post = HttpClient.post("http://192.168.199.127:8067/openapi/rest/hometop/homeinfo", AESUtil.encrypt(data));
       System.out.println(post);
       System.out.println(AESUtil.decrypt(post));
    }
    }











    /**
    * author:qiaoyongjun
    * StrNo:用戶(hù)輸入的身份證件號(hào)碼
    * _id:用來(lái)承載錯(cuò)誤信息的控件ID號(hào),用來(lái)進(jìn)行友好提示
    *判斷身份證號(hào)碼格式函數(shù)
    *公民身份號(hào)碼是特征組合碼,
    *排列順序從左至右依次為:六位數(shù)字地址碼,八位數(shù)字出生日期碼,三位數(shù)字順序碼和一位數(shù)字校驗(yàn)碼
    *如果驗(yàn)證通過(guò) 返回 true
    */
    function isChinaIDCard(StrNo, _Id) {
    var error = document.getElementById(_Id);
    StrNo = StrNo.toString();
    if (StrNo.length == 15) {
    if (!isValidDate("19" + StrNo.substr(6, 2), StrNo.substr(8, 2),
    StrNo.substr(10, 2), _Id)) {
    return false;
    }
    } else if (StrNo.length == 18) {
    if (!isValidDate(StrNo.substr(6, 4), StrNo.substr(10, 2), StrNo
    .substr(12, 2), _Id)) {
    return false;
    }
    } else {
    error.innerHTML = "";
    error.innerHTML = "輸入的身份證號(hào)碼必須為15位或者18位!";
    return false;
    }
    if (StrNo.length == 18) {
    var a, b, c
    if (!isNumber(StrNo.substr(0, 17))) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼錯(cuò)誤,前17位不能含有英文字母!";
    return false;
    }
    a = parseInt(StrNo.substr(0, 1)) * 7 + parseInt(StrNo.substr(1, 1))
    * 9 + parseInt(StrNo.substr(2, 1)) * 10;
    a = a + parseInt(StrNo.substr(3, 1)) * 5
    + parseInt(StrNo.substr(4, 1)) * 8
    + parseInt(StrNo.substr(5, 1)) * 4;
    a = a + parseInt(StrNo.substr(6, 1)) * 2
    + parseInt(StrNo.substr(7, 1)) * 1
    + parseInt(StrNo.substr(8, 1)) * 6;
    a = a + parseInt(StrNo.substr(9, 1)) * 3
    + parseInt(StrNo.substr(10, 1)) * 7
    + parseInt(StrNo.substr(11, 1)) * 9;
    a = a + parseInt(StrNo.substr(12, 1)) * 10
    + parseInt(StrNo.substr(13, 1)) * 5
    + parseInt(StrNo.substr(14, 1)) * 8;
    a = a + parseInt(StrNo.substr(15, 1)) * 4
    + parseInt(StrNo.substr(16, 1)) * 2;
    b = a % 11;
    if (b == 2) //最后一位為校驗(yàn)位  
    {
    c = StrNo.substr(17, 1).toUpperCase(); //轉(zhuǎn)為大寫(xiě)X  
    } else {
    c = parseInt(StrNo.substr(17, 1));
    }
    switch (b) {
    case 0:
    if (c != 1) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:1";
    return false;
    }
    break;
    case 1:
    if (c != 0) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:0";
    return false;
    }
    break;
    case 2:
    if (c != "X") {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:X";
    return false;
    }
    break;
    case 3:
    if (c != 9) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:9";
    return false;
    }
    break;
    case 4:
    if (c != 8) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:8";
    return false;
    }
    break;
    case 5:
    if (c != 7) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:7";
    return false;
    }
    break;
    case 6:
    if (c != 6) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:6";
    return false;
    }
    break;
    case 7:
    if (c != 5) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:5";
    return false;
    }
    break;
    case 8:
    if (c != 4) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:4";
    return false;
    }
    break;
    case 9:
    if (c != 3) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:3";
    return false;
    }
    break;
    case 10:
    if (c != 2) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼校驗(yàn)位錯(cuò):最后一位應(yīng)該為:2";
    return false;
    }
    }
    } else {//15位身份證號(hào)  
    if (!isNumber(StrNo)) {
    error.innerHTML = "";
    error.innerHTML = "身份證號(hào)碼錯(cuò)誤,前15位不能含有英文字母!";
    return false;
    }
    }
    return true;
    }
    /**
    * 驗(yàn)證身份證件中的日期是否合法有效
    * @param iY
    * @param iM
    * @param iD
    * @param _id
    * @return
    */
    function isValidDate(iY, iM, iD, _id) {
    if (iY > 2200 || iY < 1900 || !isNumber(iY)) {
    document.getElementById(_id).innerHTML = "";
    document.getElementById(_id).innerHTML = "輸入身份證號(hào),年度" + iY + "非法!";
    return false;
    }
    if (iM > 12 || iM <= 0 || !isNumber(iM)) {
    document.getElementById(_id).innerHTML = "";
    document.getElementById(_id).innerHTML = "輸入身份證號(hào),月份" + iM + "非法!";
    return false;
    }
    if (iD > 31 || iD <= 0 || !isNumber(iD)) {
    document.getElementById(_id).innerHTML = "";
    document.getElementById(_id).innerHTML = "輸入身份證號(hào),日期" + iD + "非法!";
    return false;
    }
    return true;
    }
    /**
    * 驗(yàn)證是否為數(shù)字
    * @param oNum
    * @return
    */
    function isNumber(oNum) {
    if (!oNum)
    return false;
    var strP = /^\d+(\.\d+)?$/;
    if (!strP.test(oNum))
    return false;
    try {
    if (parseFloat(oNum) != oNum)
    return false;
    } catch (ex) {
    return false;
    }
    return true;
    }
    posted on 2014-12-21 22:09 藤本薔薇 閱讀(1767) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 一级毛片高清免费播放| 亚洲AV无码乱码精品国产| 97在线免费观看视频| 亚洲国产熟亚洲女视频| 亚洲av日韩av无码| 中文字幕亚洲激情| 国产小视频在线观看免费| 在线观看视频免费完整版| 午夜免费福利片观看| 两个人看的www免费| 国产精品偷伦视频免费观看了| 久久亚洲精品高潮综合色a片| 国产成人精品日本亚洲直接| 78成人精品电影在线播放日韩精品电影一区亚洲 | a级毛片免费观看视频| 羞羞漫画页面免费入口欢迎你| 亚洲码欧美码一区二区三区| 亚洲国产高清视频在线观看| 久久亚洲国产精品| 久久青青成人亚洲精品| 国产成A人亚洲精V品无码性色| 国产成人精品日本亚洲专区| 成人亚洲网站www在线观看| 国产男女猛烈无遮挡免费网站| 免费看美女让人桶尿口| 在线免费一区二区| 免费无码又爽又高潮视频| 成年性午夜免费视频网站不卡| 歪歪漫画在线观看官网免费阅读| 亚洲毛片在线免费观看| 18禁网站免费无遮挡无码中文| 97性无码区免费| 成人免费无码大片A毛片抽搐| 午夜免费福利在线| 国产午夜免费秋霞影院| 免费大片在线观看网站| 亚洲一区二区精品视频| 久久亚洲国产午夜精品理论片| 久久久亚洲精品无码| 亚洲黄色在线视频| 亚洲人精品亚洲人成在线|