Java BigInteger to bigIntegerToHex(final BigInteger bigInteger)

Here you can find the source of bigIntegerToHex(final BigInteger bigInteger)

Description

Wandelt einen BigInteger in vorzeichenlose Hex-Darstellung um.

License

Open Source License

Parameter

Parameter Description
bigInteger BigInteger

Return

Hex-Zeichenfolge

Declaration

public static String bigIntegerToHex(final BigInteger bigInteger) 

Method Source Code


//package com.java2s;
/*/*ww w . j  a  v  a 2  s .  c  o m*/
 * Copyright 2016 by Kappich Systemberatung Aachen
 * 
 * This file is part of de.bsvrz.dav.daf.
 * 
 * de.bsvrz.dav.daf is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; either version 3 of the License, or
 * (at your option) any later version.
 * 
 * de.bsvrz.dav.daf is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with de.bsvrz.dav.daf; If not, see <http://www.gnu.org/licenses/>.
    
 * Contact Information:
 * Kappich Systemberatung
 * Martin-Luther-Stra?e 14
 * 52062 Aachen, Germany
 * phone: +49 241 4090 436 
 * mail: <info@kappich.de>
 */

import java.math.BigInteger;

import java.util.Arrays;

public class Main {
    /**
     * Wandelt einen BigInteger in vorzeichenlose Hex-Darstellung um.
     * @param bigInteger BigInteger
     * @return Hex-Zeichenfolge
     */
    public static String bigIntegerToHex(final BigInteger bigInteger) {
        return bytesToHex(bigIntegerToBytes(bigInteger));
    }

    /**
     * Wandelt ein Byte-Array in eine hexadezimale Darstellung um
     * @param bytes Byte-Array
     * @return Hex-Darstellung, z.B. "4711af2b"
     */
    public static String bytesToHex(final byte[] bytes) {
        StringBuilder stringBuilder = new StringBuilder(bytes.length * 2);
        for (byte b : bytes) {
            stringBuilder.append(Character.forDigit(0xF & (b >>> 4), 16));
            stringBuilder.append(Character.forDigit(0xF & b, 16));
        }
        return stringBuilder.toString();
    }

    /**
     * Wandelt einen BigInteger in ein vorzeichenloses Byte-Array um.
     * @param bigInteger BigInteger
     * @return byte-Array mit erstem Byte != 0
     */
    public static byte[] bigIntegerToBytes(final BigInteger bigInteger) {
        byte[] bytes = bigInteger.toByteArray();
        if (bytes[0] == 0) {
            return Arrays.copyOfRange(bytes, 1, bytes.length);
        }
        return bytes;
    }
}

Related

  1. bigIntegerToBytes(BigInteger integer)
  2. bigIntegerToBytes(BigInteger n, byte[] data, int[] offset)
  3. bigIntegerToBytes(final BigInteger bigInteger)
  4. bigIntegerToDigits(BigInteger n)
  5. BigIntegerToEightBytes(BigInteger value)
  6. bigIntegerToList(BigInteger number)
  7. bigIntegerToString(final BigInteger value)
  8. bigIntegerToUnsignedByteArray(BigInteger a, int len)
  9. bigIntToArray(BigInteger data)