锁定老帖子 主题:java 字符串 进制之间的转换
精华帖 (0) :: 良好帖 (0) :: 新手帖 (3) :: 隐藏帖 (2)
|
|
---|---|
作者 | 正文 |
发表时间:2010-06-21
最后修改:2010-06-21
String cardNum = "AC67D978";,此时要求把cardNum转换为 cardNum = "2027513772"//十六进制0x78D967AC对应的十进制字符串,考虑了好久,在同事的帮助下终于搞定, 不过并不知道这种方法是不是最佳, /** * 将操作员编码替换为消费卡卡号(并转换为10进制) * @param cardNum 消费卡卡号(8字节) * @return reStr 返回值 */ private static String byte2String(String cardNum) { String reStr = "001";//返回值 try { if (cardNum.length() < 8) { throw new Exception("读取POS传送的消费卡卡号不足8位"); } byte[] bs = cardNum.getBytes(); byte[] b1 = new byte[bs.length]; int[] b2 = new int[bs.length / 2]; for (int i = 0; i < bs.length; i++) {//计算出cardNum中每一个字符对应的十进制 if (bs[i] >= 'A' || bs[i] >= 'a') { b1[i] = (byte) (bs[i] - 0x30 - 7); } else { b1[i] = (byte) (bs[i] - 0x30); } } b2[0] = b1[6] << 4 | (b1[7] & 0x0f);//例:得到120(0x78) b2[1] = b1[4] << 4 | (b1[5] & 0x0f);//例:得到217(0xD9) b2[2] = b1[2] << 4 | (b1[3] & 0x0f);//例:得到103(0x67) b2[3] = b1[0] << 4 | (b1[1] & 0x0f);//例:得到172(0xAC) reStr = (b2[0] << 24 | b2[1] << 16 | b2[2] << 8 | b2[3]) + "";//得到2027513772(0x78D967AC) } catch (Exception e) { logger.error(e.getMessage(), e); return reStr; } return reStr; } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2010-06-21
http://www.iteye.com/topic/683454
|
|
返回顶楼 | |
发表时间:2010-06-21
抛出异常的爱 写道 http://www.iteye.com/topic/683454
多谢抛哥的指点,不过有点不符合我的题意,呵呵 |
|
返回顶楼 | |
发表时间:2010-06-21
int i=Integer.decode("0xFFFF");
|
|
返回顶楼 | |
发表时间:2010-06-21
明白没,,,
|
|
返回顶楼 | |
发表时间:2010-06-21
zuoge85 写道 int i=Integer.decode("0xFFFF");
感谢!!! |
|
返回顶楼 | |
发表时间:2010-06-21
最后修改:2010-06-21
Integer.parseInt(String s, int radix);
Integer.toString(int i,int radix); |
|
返回顶楼 | |
发表时间:2010-06-21
sjynt131 写道 Integer.parseInt(String s, int radix);
Integer.toString(int i,int radix); 当初没想到java的API,真是惭愧啊 |
|
返回顶楼 | |
发表时间:2010-06-21
没想到javaeye已经沦落至此了
|
|
返回顶楼 | |
发表时间:2010-06-22
最后修改:2010-06-22
racnow 写道 没想到javaeye已经沦落至此了
考你个问题。别说别个。 class A{ public static void m(Double d){ } } class B{ public static void m(double d){ } } 能不能调用 A.m(12); B.m(new Integer(12)); 关键是why? |
|
返回顶楼 | |