Thursday, November 15, 2007

Parsing and Formatting a Byte Array into Binary, Octal, and Hexadecimal

This example uses a BigInteger to convert a byte array to a string of binary, octal, or hexadecimal values.
    // Get a byte array
byte[] bytes = new byte[]{(byte)0x12, (byte)0x0F, (byte)0xF0};

// Create a BigInteger using the byte array
BigInteger bi = new BigInteger(bytes);

// Format to binary
String s = bi.toString(2); // 100100000111111110000

// Format to octal
s = bi.toString(8); // 4407760

// Format to decimal
s = bi.toString(); // 1183728

// Format to hexadecimal
s = bi.toString(16); // 120ff0
if (s.length() % 2 != 0) {
// Pad with 0
s = "0"+s;
}


// Parse binary string
bi = new BigInteger("1001000001111111100 00", 2);

// Parse octal string
bi = new BigInteger("4407760", 8);

// Parse decimal string
bi = new BigInteger("1183728");

// Parse hexadecimal string
bi = new BigInteger("120ff0", 16);

// Get byte array
bytes = bi.toByteArray();

Proxmox installation display out of range

Reference:  https://forum.proxmox.com/threads/proxmox-ve-screen-out-of-range.131297/