将字符串转换成16进制字节数组和16进制数组的小方法
2016-02-26 14:28
489 查看
一、将字符串转换成int数组
/**
* 将字符串转换为16进制int数组
* @param hexString
* @return returnBytes
*/
private static int[] strToToHexByte(String hexString) {
hexString = hexString.replace(" ", "");
// 如果长度不是偶数,就在后面添加空格
if ((hexString.length() % 2) != 0) {
hexString += " ";
}
// 定义一个数组,长度是待转换数组长度的一半
int[] returnBytes = new int[hexString.length() / 2];
for (int i = 0; i < returnBytes.length; i++) {
returnBytes[i] = (0xff & Integer.parseInt(hexString.substring(i * 2, i * 2 + 2), 16));
}
return returnBytes;
}
二、将字符串转换成16进制字节数组
/**
* 将字符串转换成16进制字节数组
* @param str
* @return byte[]
*/
public static byte[] stringToByte16(String str) {
str = str.replace(" ", "");
if ((str.length() % 2) != 0) {
str += " ";
}
byte[] by = new byte[str.length() / 2];
for (int i = 0; i < str.length() / 2; ++i) {
by[i] = (byte)(Integer.parseInt(str.substring(i * 2,i * 2 + 2),16) & 0xff);
}
return by;
}
/**
* 将字符串转换为16进制int数组
* @param hexString
* @return returnBytes
*/
private static int[] strToToHexByte(String hexString) {
hexString = hexString.replace(" ", "");
// 如果长度不是偶数,就在后面添加空格
if ((hexString.length() % 2) != 0) {
hexString += " ";
}
// 定义一个数组,长度是待转换数组长度的一半
int[] returnBytes = new int[hexString.length() / 2];
for (int i = 0; i < returnBytes.length; i++) {
returnBytes[i] = (0xff & Integer.parseInt(hexString.substring(i * 2, i * 2 + 2), 16));
}
return returnBytes;
}
二、将字符串转换成16进制字节数组
/**
* 将字符串转换成16进制字节数组
* @param str
* @return byte[]
*/
public static byte[] stringToByte16(String str) {
str = str.replace(" ", "");
if ((str.length() % 2) != 0) {
str += " ";
}
byte[] by = new byte[str.length() / 2];
for (int i = 0; i < str.length() / 2; ++i) {
by[i] = (byte)(Integer.parseInt(str.substring(i * 2,i * 2 + 2),16) & 0xff);
}
return by;
}
相关文章推荐
- bzoj 2282 [Sdoi2011]消防(树的直径,二分)
- linux修改打开文件最大数两种方法
- day23:从物理执行的角度透视Spark Job
- jQuery插件ajax图片上传插件
- GCD中的dispatch_apply的用法及作用
- ArcGISServer集群注册文件夹时的路径问题
- Visual Studio2015 publish Could not find file *****
- 十三、Android UiAutomator Junit 断言函数的使用
- 逻辑漏洞(二)
- 初识Python
- Git的诞生(转)
- day47:DT大数据梦工厂性能优化day47
- linux 睡眠函数——sleep(),usleep()
- c程序是如何跑起来的?
- eclipse里面debug时step into 和step over有什么差别?
- 【Linux C中文函数手册】文件内容控制函数
- bzoj1034 泡泡堂
- iOS 中 cell和 label 的自适应高度
- Android APP界面标注、尺寸换算和APP标注工具
- linux下shell显示-bash-4.1#不显示路径解决方法