The Java Developers Almanac 1.4


Order this book from Amazon.

   
Home > List of Packages > java.math  [6 examples]

e131. 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("100100000111111110000", 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();

 Related Examples
e126. Operating with Big Integer Values
e127. Operating with Big Decimal Values
e128. Setting the Decimal Place of a Big Decimal Value
e129. Performing Bitwise Operations with BigInteger
e130. Parsing and Formatting a Big Integer into Binary, Octal, and Hexadecimal


© 2002 Addison-Wesley.