获取房屋编码的校验码的java和C#版本
生活随笔
收集整理的這篇文章主要介紹了
获取房屋编码的校验码的java和C#版本
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
獲取房屋編碼的校驗(yàn)碼java版
//獲取房屋編碼的校驗(yàn)碼private String getC(String str_in){String rbc="";//26位加權(quán)因子int wi[]={10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1}; char c;int S=0,z=0;for(int i=0;i<25;i++){c=str_in.charAt(i);if(c>='A' && c<='Z') //A-Z字符{z=((int)c-55)*wi[i];}else if(c>='0' && c<='9'){z=(int)c*wi[i];}S+=z;}int Y=S % 11;//校驗(yàn)碼//根據(jù)模的值得到對(duì)應(yīng)的校驗(yàn)碼//對(duì)應(yīng)關(guān)系為://Y值: 0 1 2 3 4 5 6 7 8 9 10//校驗(yàn)碼: 1 0 X 9 8 7 6 5 4 3 2char cy[]={'1','0','X','9','8','7','6','5','4','3','2'};char g_c=cy[Y]; //獲取校驗(yàn)碼rbc=String.valueOf(g_c);return rbc;}//計(jì)算26位的加權(quán)因子方法@Testpublic void Test(){ //計(jì)算 wi[i]第i位置上的加權(quán)因子for(int i=26;i>=1;i--){int j=i-1;Double B=Math.pow(2,j);int LB=B.intValue();Integer m=LB % 11;//System.out.println(i+"="+m);System.out.print(m+",");}}獲取房屋編碼的校驗(yàn)碼C#版
//獲取房屋編碼的校驗(yàn)碼private string getC(string str_in){string rbc = "";int[] wi = new int[] { 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1 }; //26位加權(quán)因子char c;int S = 0, z = 0;for (int i = 0; i < 25; i++){c = char.Parse(str_in.Substring(i, 1));//.charAt(i);if (c >= 'A' && c <= 'Z') //A-Z字符{z = ((int)c - 55) * wi[i];}else if (c >= '0' && c <= '9'){z = (int)c * wi[i];}S += z;}int Y = S % 11;//校驗(yàn)碼//根據(jù)模的值得到對(duì)應(yīng)的校驗(yàn)碼//對(duì)應(yīng)關(guān)系為://Y值: 0 1 2 3 4 5 6 7 8 9 10//校驗(yàn)碼: 1 0 X 9 8 7 6 5 4 3 2string xym = "1,0,X,9,8,7,6,5,4,3,2";string[] cy = xym.Split(new char[] { ',' });// { '1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2' };string g_c = cy[Y]; //獲取校驗(yàn)碼rbc = g_c;return rbc;}總結(jié)
以上是生活随笔為你收集整理的获取房屋编码的校验码的java和C#版本的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: web三维gis引擎cesium的学习笔
- 下一篇: 天若ocr免费下载v2021.20图片转