您好,欢迎来到暴趣科技网。
搜索
您的当前位置:首页java十进制转十六进制_Java十进制十六进制转换

java十进制转十六进制_Java十进制十六进制转换

来源:暴趣科技网

因项目需求,这里的16转10进制采用的是一段byte[]数组中存放的16进制批量转换成10进制,如果只是少量16转10,则直接调用以下代码即可

long decNum = Long.parseLong("FFFF", 16);

// 输出结果为65535

工具类代码如下:

public class StringUtil {

/**

* 16进制转10进制

*

* @param bytes

* @return

*/

public static String bytes2hex03(byte[] bytes) {

final String HEX = "01234567abcdef";

StringBuilder sb = new StringBuilder(bytes.length * 2);

for (byte b : bytes) {

sb.append(HEX.charAt((b >> 4) & 0x0f));

sb.append(HEX.charAt(b & 0x0f));

}

return sb.toString();

}

/**

* 10进制转16进制

*

* @param num

* @param totalLenght 需要的字符串总长度

* @return

*/

public static String toHex(int num, int totalLenght) {

String str = Integer.toHexString(num);

str = splicingZero(str, totalLenght);

return str;

}

public static String toHex(long num, int totalLenght) {

String str = Long.toHexString(num);

str = splicingZero(str, totalLenght);

return str;

}

/**

* 字符串前面补零操作

*

* @param str 字符串本体

* @param totalLenght 需要的字符串总长度

* @return

*/

public static String splicingZero(String str, int totalLenght) {

int strLenght = str.length();

String strReturn = str;

for (int i = 0; i < totalLenght - strLenght; i++) {

strReturn = "0" + strReturn;

}

return strReturn;

}

}

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baoquwan.com 版权所有 湘ICP备2024080961号-7

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务