1. Byte to desimal
Gunakan konversi tipe (int) secara langsung.
/** Byte to desimal*/ public static int byte2int (byte b) {int r = (int) b; mengembalikan r; }2. Desimal ke byte
Langsung gunakan (byte) ketik konversi.
/** desimal ke byte*/ public static byte int2byte (int i) {byte r = (byte) i; mengembalikan r; }3. Byte array ke string heksadesimal
Untuk setiap byte, pertama -tama lakukan operasi yang sama dengan 0xFF, dan kemudian gunakan fungsi integer.tohexstring (). Jika hasilnya hanya 1 bit, Anda perlu menambahkan 0 di depan.
/** Byte array ke hex string*/ public static string bytes2HexString (byte [] b) {string r = ""; untuk (int i = 0; i <b.length; i ++) {string hex = integer.toHexString (b [i] & 0xff); if (hex.length () == 1) {hex = '0' + hex; } r += hex.touppercase (); } return r; }4. String heksadesimal ke array byte
Ini lebih rumit. Setiap karakter heksadesimal adalah 4 bit dan satu byte adalah 8 bit, jadi dua karakter heksadesimal dikonversi menjadi 1 byte. Untuk karakter pertama, ubah menjadi byte dan kemudian bergeser ke kiri 4 bit, dan kemudian lakukan atau beroperasi dengan byte karakter kedua, sehingga kedua karakter dikonversi menjadi 1 byte.
/** Karakter dikonversi menjadi byte*/ private static byte chartobyte (char c) {return (byte) "0123456789Abcdef" .indexof (c); } /** Hex string ke array byte* / public static byte [] hexString2bytes (string hex) {if ((hex == null) || (hex.equals (""))) {return null; } lain jika (hex.length ()%2! = 0) {return null; } else {hex = hex.touppercase (); int len = hex.length ()/2; byte [] b = byte baru [len]; char [] hc = hex.tochararray (); untuk (int i = 0; i <len; i ++) {int p = 2*i; b [i] = (byte) (chartobyte (hc [p]) << 4 | chartobyte (hc [p+1])); } return b; }}5. untuk mengubah array byte menjadi string
Gunakan string baru () secara langsung.
/** Byte array ke string*/ public static string bytes2string (byte [] b) melempar pengecualian {string r = string baru (b, "utf-8"); mengembalikan r; }6. String ke Array Byte
Gunakan getBytes () secara langsung.
/** String ke array byte*/ public static byte [] string2bytes (string s) {byte [] r = s.getbytes (); mengembalikan r; }7. string heksadesimal untuk string
Konversi ke byte [] pertama, lalu konversi ke string.
/** HexString ke string*/ public static string hex2string (string hex) melempar pengecualian {string r = bytes2string (hexString2bytes (hex)); mengembalikan r; }8. String ke string heksadesimal
Konversi ke byte [] pertama, lalu konversi ke string hexadecimal.
/** String ke hexadecimal string*/ public static string string2HexString (string s) melempar pengecualian {string r = bytes2HexString (string2bytes (s)); mengembalikan r; }Fungsi utama:
public static void main (string [] args) melempar pengecualian {byte b1 = (byte) 45; System.out.println ("1. Byte to desimal:" + byte2int (b1)); int i = 89; System.out.println ("2.1 ke byte to byte:" + int2byte (i)); byte [] b2 = byte baru [] {(byte) 0xff, (byte) 0x5f, (byte) 0x6, (byte) 0x5a}; System.out.println ("3. Byte Array ke Hexadecimal String:" + Bytes2HexString (B2)); String s1 = string baru ("1da47c"); System.out.println ("4,16% string ke array byte:" + arrays.tostring (hexString2bytes (s1)))); System.out.println ("5. Byte Array ke String:" + Bytes2String (B2)); System.out.println ("6. String ke Byte Array:" + arrays.tostring (String2Bytes (S1))); System.out.println ("7.16% String ke String:" + Hex2String (S1)); String s2 = string baru ("Halo!"); System.out.println ("8. String ke string hexadecimal:" + string2HexString (s2)); }Hasil Menjalankan:
1. Byte to desimal: 452.1 desimal ke byte: 893. Byte array ke hexadecimal string: ff5f065a4. String heksadesimal ke array byte: [29, -92, 124] 5. Byte Array to String :? _ Z6. String ke Byte Array: [49, 68, 65, 52, 55, 67] 7. String hexadecimal ke string :? | 8. String ke hexadecimal string: 48656c6c6f21
Artikel di atas secara singkat membahas konversi timbal balik antara biner, desimal, heksadesimal dan string adalah semua konten yang saya bagikan dengan Anda. Saya harap ini dapat memberi Anda referensi dan saya harap Anda dapat mendukung wulin.com lebih lanjut.