HardBirch

16进制字符串与字节数组相互转换

时间:09-07-09 栏目:iOS移动应用开发技术 作者:张飞不张,文采横飞 评论:0 点击: 1,854 次

16进制字符串与字节数组之间的相互转换,具体见代码。

public class Convert {
private static final String HEX_NUMS_STR="0123456789ABCDEF";

public static void main(String[] args) {
String hexStr = "A123B654";

byte[] bs = hexStringToByte(hexStr);

String hexstr2 = byteToHexString(bs);

System.out.println(hexstr2);
}

/**
* 将16进制字符串转换成字节数组
* @param hex
* @return
*/
public static byte[] hexStringToByte(String hex) {
int len = (hex.length() / 2);
byte[] result = new byte[len];
char[] hexChars = hex.toCharArray();
for (int i = 0; i < len; i++) {
int pos = i * 2;
result[i] = (byte) (HEX_NUMS_STR.indexOf(hexChars[pos]) << 4
| HEX_NUMS_STR.indexOf(hexChars[pos + 1]));
}
return result;
}

/**
* 将指定byte数组转换成16进制字符串
* @param b
* byte[]
* @return void
*/
public static String byteToHexString(byte[] b) {
StringBuffer hexString = new StringBuffer();
for (int i = 0; i < b.length; i++) {
String hex = Integer.toHexString(b[i] & 0xFF);
if (hex.length() == 1) {
hex = '0' + hex;
}
hexString.append(hex.toUpperCase());
}
return hexString.toString();
}
}

 

声明: 本文由( 张飞不张,文采横飞 )原创编译,转载请保留链接: 16进制字符串与字节数组相互转换

16进制字符串与字节数组相互转换:等您坐沙发呢!

发表评论


QQ群互动

Linux系统与内核学习群:194051772

WP建站技术学习交流群:194062106

魔豆之路QR

魔豆的Linux内核之路

魔豆的Linux内核之路

优秀工程师当看优秀书籍

优秀程序员,要看优秀书!

赞助商广告

友荐云推荐