У меня есть строковое значение, как «0x0601930600058000050001», необходимо преобразовать в массив байтовПреобразование строки в массив байтов (0x) - Java
byte[] codes1 = new byte[]{(byte)0x06,(byte)0x01,(byte)0x93,(byte)0x06,(byte)0x00,(byte)0x05,(byte)0x80,(byte)0x00,(byte)0x05,(byte)0x00,(byte)0x01};
for(byte b : codes1){
System.out.println(b);
}
System.out.println("======================");
byte[] cod = "0x0601930600058000050001".getBytes();
for(byte b : cod){
System.out.println(b);
}
И результаты различны, как сделать их одинаковыми. Выход первого контура является фактическим, которого я ожидаю, второй цикл - неправильный вывод.
Если вы видите, я разбиваю каждый 2 байта и набираю литье и используя 0x для получения фактического значения.
Вопрос: Есть ли какой-либо предопределенный метод (кодек Apache commons), который может помочь мне выполнить ту же задачу, что и первый цикл? Я получаю это значение String динамически во время выполнения.
Просьба предложить.
Спасибо!
Это не получает фактический ожидаемый результат: байт [] треска = "0x0601930600058000050001" .getBytes (Charset.forName ("UTF-8")); for (byte b: cod) { \t System.out.println (b); } – Kumar