У меня есть массив строк формы:Литые элементы массива строк массива байтов в Java
String[] s = {0x22, 0xD2, 0x01}
Теперь я должен преобразовать его в байт форму массива, как:
byte[] bytes = {(byte)0x22, (byte)0xD2, (byte)0x01}
Это может быть сделано в одной строке в C#, но как это сделать в Java, как я должен добавить bytes
массив в другой массив того же типа и формата.
Здесь я включил какую-то часть кода, я не могу включить весь код:
String sr = "22D201";
String[] s = {sr.substring(0, 2),sr.substring(2, 4),sr.substring(4)};
byte[] ret = new byte[]{(byte)0x2C, (byte)0x04, (byte)0x01, (byte)0x67, (byte)0x00, (byte)0x00, (byte)0x3D};
Теперь я должен приложить byte[] bytes
к byte[] ret
, но я не могу, как массив в виде строки это String[] s
. Так как скрытое String[] s
так, что я могу добавить его в byte[] ret
.
Это 'String [] S = {0x22, 0xac, 0xFF};' не действует Java: "несовместимые типы: INT не может быть преобразовано в строку". Кроме того, 'AC' и' FF' являются большими для байта. –
Plese [изменить] ваш вопрос и включить ваш реальный код. –
Эй, ребята, спасибо, и я получил это. Я использовал этот метод, и он работает. 'Открытые статические байт [] hexStringToByteArray (String s) {INT Len = s.length(); byte [] data = новый байт [len/2]; для (INT I = 0; г