Package org.miaixz.bus.core.xyz
Class HexKit
java.lang.Object
org.miaixz.bus.core.codec.binary.Hex
org.miaixz.bus.core.xyz.HexKit
十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制,一般用数字0到9和字母A到F表示(其中:A~F即10~15)。
例如十进制数57,在二进制写作111001,在16进制写作39。
像java,c这样的语言为了区分十六进制和十进制数值,会在十六进制数的前面加上 0x,比如0x20是十进制的32,而不是十进制的20
此工具类为16进制组合工具类,除了继承
Hex实现编码解码外,提供其它转换类和识别类工具。- Since:
- Java 17+
- Author:
- Kimi Liu
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidappendHex(StringBuilder builder, byte b, boolean toLowerCase) 将byte值转为16进制并添加到StringBuilder中static ColordecodeColor(String hexColor) 将Hex颜色值转为static StringencodeColor(Color color) 将Color编码为Hex形式static StringencodeColor(Color color, String prefix) 将Color编码为Hex形式static String格式化Hex字符串,结果为每2位加一个空格,类似于:static String格式化Hex字符串,结果为每2位加一个空格,类似于:static int16进制字符串转为intstatic long16进制字符串转为longstatic booleanisHexNumber(String value) 判断给定字符串是否为16进制数 如果是,需要使用对应数字类型对象的decode方法解码 例如:Integer.decode方法解码int类型的16进制数字static BigIntegertoBigInteger(String hexStr) Hex(16进制)字符串转为BigIntegerstatic StringtoHex(int value) 转为16进制字符串static StringtoHex(long value) 转为16进制字符串static StringtoUnicodeHex(char ch) 将指定char值转换为Unicode字符串形式,常用于特殊字符(例如汉字)转Unicode形式 转换的字符串如果u后不足4位,则前面用0填充,例如:static StringtoUnicodeHex(int value) 将指定int值转换为Unicode字符串形式,常用于特殊字符(例如汉字)转Unicode形式 转换的字符串如果u后不足4位,则前面用0填充,例如:Methods inherited from class org.miaixz.bus.core.codec.binary.Hex
decode, decode, decode, decodeString, decodeString, decodeString, encode, encode, encode, encodeString, encodeString, encodeString, encodeString
-
Constructor Details
-
HexKit
public HexKit()
-
-
Method Details
-
encodeColor
将Color编码为Hex形式- Parameters:
color-Color- Returns:
- Hex字符串
-
encodeColor
将Color编码为Hex形式- Parameters:
color-Colorprefix- 前缀字符串,可以是#、0x等- Returns:
- Hex字符串
-
decodeColor
将Hex颜色值转为- Parameters:
hexColor- 16进制颜色值,可以以#开头,也可以用0x开头- Returns:
Color
-
isHexNumber
判断给定字符串是否为16进制数 如果是,需要使用对应数字类型对象的decode方法解码 例如:Integer.decode方法解码int类型的16进制数字- Parameters:
value- 值- Returns:
- 是否为16进制
-
toUnicodeHex
将指定int值转换为Unicode字符串形式,常用于特殊字符(例如汉字)转Unicode形式 转换的字符串如果u后不足4位,则前面用0填充,例如:你 = \u4f60
- Parameters:
value- int值,也可以是char- Returns:
- Unicode表现形式
-
toUnicodeHex
将指定char值转换为Unicode字符串形式,常用于特殊字符(例如汉字)转Unicode形式 转换的字符串如果u后不足4位,则前面用0填充,例如:你 = \u4f60
- Parameters:
ch- char值- Returns:
- Unicode表现形式
-
toHex
转为16进制字符串- Parameters:
value- int值- Returns:
- 16进制字符串
-
hexToInt
16进制字符串转为int- Parameters:
value- 16进制字符串- Returns:
- 16进制字符串int值
-
toHex
转为16进制字符串- Parameters:
value- int值- Returns:
- 16进制字符串
-
hexToLong
16进制字符串转为long- Parameters:
value- 16进制字符串- Returns:
- long值
-
appendHex
将byte值转为16进制并添加到StringBuilder中- Parameters:
builder-StringBuilderb- bytetoLowerCase- 是否使用小写
-
toBigInteger
Hex(16进制)字符串转为BigInteger- Parameters:
hexStr- Hex(16进制字符串)- Returns:
BigInteger
-
format
格式化Hex字符串,结果为每2位加一个空格,类似于:e8 8c 67 03 80 cb 22 00 95 26 8f- Parameters:
hexStr- Hex字符串- Returns:
- 格式化后的字符串
-
format
格式化Hex字符串,结果为每2位加一个空格,类似于:e8 8c 67 03 80 cb 22 00 95 26 8f- Parameters:
hexStr- Hex字符串prefix- 自定义前缀,如0x- Returns:
- 格式化后的字符串
-