En este programa, aprenderá diferentes técnicas para convertir una matriz de bytes a hexadecimal en Java.
Para comprender este ejemplo, debe tener el conocimiento de los siguientes temas de programación de Java:
- Matrices de Java
- Objetos y clases de Java
Ejemplo 1: Convertir matriz de bytes en valor hexadecimal
public class ByteHex ( public static void main(String() args) ( byte() bytes = (10, 2, 15, 11); for (byte b : bytes) ( String st = String.format("%02X", b); System.out.print(st); ) ) )
Salida
0A020F0B
En el programa anterior, tenemos una matriz de bytes llamada bytes. Para convertir la matriz de bytes en un valor hexadecimal, recorremos cada byte de la matriz y usamos String
's format()
.
Usamos %02X
para imprimir dos lugares ( 02
) de X
valor hexadecimal ( ) y almacenarlo en la cadena st.
Este es un proceso relativamente más lento para la conversión de matrices de bytes grandes. Podemos aumentar drásticamente la velocidad de ejecución utilizando las operaciones de bytes que se muestran a continuación.
Ejemplo 2: Convertir matriz de bytes en valor hexadecimal mediante operaciones de bytes
public class ByteHex ( private final static char() hexArray = "0123456789ABCDEF".toCharArray(); public static String bytesToHex(byte() bytes) ( char() hexChars = new char(bytes.length * 2); for ( int j = 0; j >> 4); hexChars(j * 2 + 1) = hexArray(v & 0x0F); ) return new String(hexChars); ) public static void main(String() args) ( byte() bytes = (10, 2, 15, 11); String s = bytesToHex(bytes); System.out.println(s); ) )
La salida del programa es la misma que en el Ejemplo 1 .