Android一串字符串怎么转换成16进制数组?求指点呀。。
data.length-1
Integer.parseInt(String, 16);
/**
* 将字符串转换为数字
*
* @param asc
* @return
*/
public int asc2Num(char asc) {
if (asc >= '0' && asc <= '9') {
return asc - '0';
} else if (asc >= 'A' && asc <= 'Z') {
return asc - 55;
} else if (asc >= 'a' && asc <= 'z') {
return asc - 87;
} else {
return -1;
}
}
public byte[] String2Bytes(String rcvStr){
String cvtStr = rcvStr.replaceAll(" ", "");
char[] buf = cvtStr.toCharArray();
int len = (buf.length-1)/2+1;
byte[] result = new byte[len]
for(int i=0;i<result.length;i++){
result[i] = asc2Num(buf[2*i]) * 16 + asc2Num(buf[2*i+1])
}
return result;
}
大致的写法是这样的。把得到的buf循环一边就可以得到了。忘采纳