Kể từ khi không có câu trả lời cho chuỗi hex để byte đơn chuyển đổi, đây là của tôi: sử dụng
private static byte hexStringToByte(String data) {
return (byte) ((Character.digit(data.charAt(0), 16) << 4)
| Character.digit(data.charAt(1), 16));
}
mẫu:
hexStringToByte("aa"); // 170
hexStringToByte("ff"); // 255
hexStringToByte("10"); // 16
Hoặc bạn cũng có thể thử các Integer.parseInt(String number, int radix)
imo, là cách tốt hơn so với những người khác.
// first parameter is a number represented in string
// second is the radix or the base number system to be use
Integer.parseInt("de", 16); // 222
Integer.parseInt("ad", 16); // 173
Integer.parseInt("c9", 16); // 201
Xem http://stackoverflow.com/questions/140131/convert-a-string-representation-of-a-hex-dump-to-a-byte -array-using-java – rafraf
'byte n [] = str.getBytes()' sẽ thực hiện tác vụ. Tuy nhiên, bạn sẽ gặp lỗi trên 'new' vì nó là một từ khóa và không thể được sử dụng làm định danh. – backslashN