Package com.qiniu.android.dns.util
Class Hex
java.lang.Object
com.qiniu.android.dns.util.Hex
public final class Hex
extends java.lang.Object
Converts hexadecimal Strings.
This class is thread-safe.
- Since:
- 1.1
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classHex.HexDecodeException -
Constructor Summary
Constructors Constructor Description Hex() -
Method Summary
Modifier and Type Method Description static byte[]decodeHex(char[] data)Converts an array of characters representing hexadecimal values into an array of bytes of those same values.static char[]encodeHex(byte[] data)Converts an array of bytes into an array of characters representing the hexadecimal values of each byte in order.static char[]encodeHex(byte[] data, boolean toLowerCase)Converts an array of bytes into an array of characters representing the hexadecimal values of each byte in order.static java.lang.StringencodeHexString(byte[] data)Converts an array of bytes into a String representing the hexadecimal values of each byte in order.protected static inttoDigit(char ch, int index)Converts a hexadecimal character to an integer.
-
Constructor Details
-
Hex
public Hex()
-
-
Method Details
-
decodeHex
Converts an array of characters representing hexadecimal values into an array of bytes of those same values. The returned array will be half the length of the passed array, as it takes two characters to represent any given byte. An exception is thrown if the passed char array has an odd number of elements.- Parameters:
data- An array of characters containing hexadecimal digits- Returns:
- A byte array containing binary data decoded from the supplied char array.
- Throws:
Hex.HexDecodeException- Thrown if an odd number or illegal of characters is supplied
-
encodeHex
public static char[] encodeHex(byte[] data)Converts an array of bytes into an array of characters representing the hexadecimal values of each byte in order. The returned array will be double the length of the passed array, as it takes two characters to represent any given byte.- Parameters:
data- a byte[] to convert to Hex characters- Returns:
- A char[] containing hexadecimal characters
-
encodeHex
public static char[] encodeHex(byte[] data, boolean toLowerCase)Converts an array of bytes into an array of characters representing the hexadecimal values of each byte in order. The returned array will be double the length of the passed array, as it takes two characters to represent any given byte.- Parameters:
data- a byte[] to convert to Hex characterstoLowerCase-trueconverts to lowercase,falseto uppercase- Returns:
- A char[] containing hexadecimal characters
- Since:
- 1.4
-
encodeHexString
public static java.lang.String encodeHexString(byte[] data)Converts an array of bytes into a String representing the hexadecimal values of each byte in order. The returned String will be double the length of the passed array, as it takes two characters to represent any given byte.- Parameters:
data- a byte[] to convert to Hex characters- Returns:
- A String containing hexadecimal characters
- Since:
- 1.4
-
toDigit
Converts a hexadecimal character to an integer.- Parameters:
ch- A character to convert to an integer digitindex- The index of the character in the source- Returns:
- An integer
- Throws:
Hex.HexDecodeException- Thrown if ch is an illegal hex character
-