Here you can find the source of int2HexString(final int i)
Parameter | Description |
---|---|
i | the integer to format |
public static String int2HexString(final int i)
//package com.java2s; /*/*from w ww. ja v a 2s .c o m*/ * jfreesteel: Serbian eID Viewer Library (GNU LGPLv3) * Copyright (C) 2011 Goran Rakic * * This is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License version * 3.0 as published by the Free Software Foundation. * * This software 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 this software; if not, see * http://www.gnu.org/licenses/. */ public class Main { /** * Formats an integer as a hex string of little-endian, non-zero-padded bytes. * * @param i the integer to format * @return the formatted string representing the integer */ public static String int2HexString(final int i) { return bytes2HexString(asByteArray(i >>> 24, i >>> 16, i >>> 8, i)); } /** * Formats an array of bytes as a string showing values in hex. <p> Silently skips leading zero * bytes. <p> * * @param bytes the bytes to print * @return formatted byte string, e.g. an array of 0x00, 0x01, 0x02, 0x03 gets printed as: * "01:02:03" */ public static String bytes2HexString(byte... bytes) { return bytes2HexStringWithSeparator(":", bytes); } public static byte[] asByteArray(int... values) { byte[] valueBytes = new byte[values.length]; for (int i = 0; i < values.length; i++) { valueBytes[i] = asByte(values[i]); } return valueBytes; } private static String bytes2HexStringWithSeparator(String separator, byte... bytes) { StringBuffer sb = new StringBuffer(); boolean first = true; for (byte b : bytes) { if (first && b == 0x00) { continue; } if (!first) { sb.append(separator); } sb.append(String.format("%02X", b)); first = false; } return sb.toString(); } private static byte asByte(int value) { return (byte) (value & 0xFF); } }