Java Byte Array to Hex String bytesToHexDelimeter(byte[] data, String delimeter)

Here you can find the source of bytesToHexDelimeter(byte[] data, String delimeter)

Description

Convenience method to convert a byte array to a hex string and seperate with delimeter.

License

Open Source License

Parameter

Parameter Description
data the byte[] to convert
delimeter the delimeter

Return

String the formatted converted byte[]

Declaration

public static String bytesToHexDelimeter(byte[] data, String delimeter) 

Method Source Code

//package com.java2s;
/*// w ww. j av a  2s. co m
 * net/balusc/util/StringUtil.java
 *
 * Copyright (C) 2007 BalusC
 *
 * This program 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.
 *
 * This library 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 library.
 * If not, see <http://www.gnu.org/licenses/>.
 */

public class Main {
    /**
     *  Convenience method to convert a byte array to a hex string and seperate with delimeter.
     *
     * @param  data  the byte[] to convert
     * @param  delimeter  the delimeter
     * @return String the formatted converted byte[]
     */
    public static String bytesToHexDelimeter(byte[] data, String delimeter) {
        if (data == null)
            return "null";
        StringBuffer buf = new StringBuffer();
        for (int i = 0; i < data.length; i++) {
            buf.append(byteToHex(data[i]).toUpperCase());
            if (i != data.length - 1) {
                buf.append(delimeter);
            }
        }
        return (buf.toString());
    }

    /**
     *  method to convert a byte to a hex string.
     *
     * @param  data  the byte to convert
     * @return String the converted byte
     */
    public static String byteToHex(byte data) {
        StringBuffer buf = new StringBuffer();
        buf.append(toHexChar((data >>> 4) & 0x0F));
        buf.append(toHexChar(data & 0x0F));
        return buf.toString();
    }

    /**
     *  Convenience method to convert an int to a hex char.
     *
     * @param  i  the int to convert
     * @return char the converted char
     */
    public static char toHexChar(int i) {
        if ((0 <= i) && (i <= 9)) {
            return (char) ('0' + i);
        } else {
            return (char) ('a' + (i - 10));
        }
    }
}

Related

  1. bytesToHexAppend(byte[] bs, int off, int length, StringBuffer sb)
  2. bytesToHexChars(byte[] bytes)
  3. bytesToHexChars(byte[] bytes)
  4. bytesToHexChars(byte[] bytes)
  5. bytesToHexChecksum(byte[] byteArr)
  6. bytesToHexFormatted(byte[] bytes)
  7. bytesToHexSpaced(byte[] bytes)
  8. bytesToHexStr(byte[] bcd)
  9. bytesToHexStr(byte[] bytes)