Here you can find the source of byteToHex(byte[] array, String separator)
Parameter | Description |
---|---|
array | byte array to convert |
separator | the delimiter of the bytes |
public static String byteToHex(byte[] array, String separator)
//package com.java2s; /******************************************************************************* * Copyright 2014 Katja Hahn// w w w. j a v a 2s . c om * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ public class Main { /** * Converts a byte array to a hex string. * <p> * Every single byte is shown in the string, also prepended zero bytes. * Single bytes are delimited with a space character. * * @param array * byte array to convert * @return hexadecimal string representation of the byte array */ public static String byteToHex(byte[] array) { assert array != null; return byteToHex(array, " "); } /** * Converts a byte array to a hex string. * <p> * Every single byte is shown in the string, also prepended zero bytes. * Single bytes are delimited with the separator. * * @param array * byte array to convert * @param separator * the delimiter of the bytes * @return hexadecimal string representation of the byte array */ public static String byteToHex(byte[] array, String separator) { assert array != null; StringBuilder buffer = new StringBuilder(); for (int i = 0; i < array.length; i++) { // add separator in between, not before the first byte if (i != 0) { buffer.append(separator); } // (b & 0xff) treats b as unsigned byte // first nibble is 0 if byte is less than 0x10 if ((array[i] & 0xff) < 0x10) { buffer.append("0"); } // use java's hex conversion for the rest buffer.append(Integer.toString(array[i] & 0xff, 16)); } return buffer.toString(); } }