Java program za pretvorbo bajtnega polja v šestnajstiško

V tem programu se boste naučili različnih tehnik pretvorbe bajtnega polja v šestnajstiško v Javi.

Če želite razumeti ta primer, morate poznati naslednje programske teme Java:

  • Java nizi
  • Razred Java in predmeti

Primer 1: Pretvori bajtno matriko v šestnajstiško vrednost

 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); ) ) )

Izhod

 0A020F0B

V zgornjem programu imamo bajtno matriko z imenom bytes. Če želite pretvoriti bajtno matriko v šestnajstiško vrednost, prestavimo vsak bajt v matriki in uporabimo String's format().

Za %02Xtiskanje dveh mest ( 02) šestnajstiške ( X) vrednosti uporabimo in jih shranimo v niz st.

To je razmeroma počasnejši postopek za pretvorbo velikih bajtov. Hitrost izvajanja lahko dramatično povečamo z uporabo bajtnih operacij, prikazanih spodaj.

Primer 2: Pretvorite bajtno polje v šestnajstiško vrednost z uporabo bajtnih operacij

 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); ) )

Rezultat programa je enak kot v primeru 1 .

Zanimive Članki...