hutool.core.util.hex¶
十六进制工具类
Module Contents¶
Classes¶
十六进制工具类,对应 Java cn.hutool.core.util.HexUtil |
API¶
- class hutool.core.util.hex.HexUtil¶
十六进制工具类,对应 Java cn.hutool.core.util.HexUtil
- _DIGITS_UPPER = '0123456789ABCDEF'¶
- _DIGITS_LOWER = '0123456789abcdef'¶
- static encode_hex_str(data: bytes, lower_case: bool = True) str¶
字节数组转十六进制字符串
默认输出小写。
- 参数:
data – 字节数组
lower_case – 是否使用小写,默认 True(与 Java 一致)
- 返回:
十六进制字符串
- static decode_hex(hex_str: str) bytes¶
十六进制字符串转字节数组
- 参数:
hex_str – 十六进制字符串(允许含空格等分隔符,自动去除)
- 返回:
字节数组
- 抛出:
ValueError – 当输入包含非法十六进制字符时抛出
- static to_hex(number: int) str¶
数字转十六进制字符串(不带0x前缀)
- 参数:
number – 整数
- 返回:
十六进制字符串(大写)
- static hex_to_int(hex_str: str) int¶
十六进制字符串转int
- 参数:
hex_str – 十六进制字符串(可选0x/0X前缀)
- 返回:
对应的整数值
- static encode_color_str(color: tuple) str¶
RGB元组转十六进制颜色字符串
- 参数:
color – RGB元组,如 (255, 128, 0)
- 返回:
十六进制颜色字符串,如 ‘#FF8000’
- static decode_color(color_str: str) tuple¶
十六进制颜色字符串转RGB元组
- 参数:
color_str – 十六进制颜色字符串,如 ‘#FF8000’ 或 ‘FF8000’
- 返回:
RGB元组,如 (255, 128, 0)
- static format_hex(hex_str: str, delimiter: str = ' ', group_size: int = 2) str¶
格式化十六进制字符串,添加分隔符
- 参数:
hex_str – 十六进制字符串
delimiter – 分隔符,默认为空格
group_size – 每组字符数,默认为2
- 返回:
格式化后的十六进制字符串,如 ‘4A:3F:2B’
- static is_hex_number(s: str) bool¶
判断字符串是否为合法的十六进制数。
- 参数:
s – 待检查的字符串
- 返回:
是否为合法十六进制数
- static to_unicode_hex(c: str) str¶
将字符转换为 Unicode 转义序列
\uXXXX。- 参数:
c – 单个字符
- 返回:
Unicode 转义序列
- static encode_hex(data: Union[str, bytes], charset: str = 'utf-8', lower_case: bool = True) str¶
将字符串或字节数组转换为十六进制字符串。
- 参数:
data – 字符串或字节数组
charset – 字符编码(当 data 为 str 时使用),默认 utf-8
lower_case – 是否使用小写,默认 True
- 返回:
十六进制字符串
- static decode_hex_str(hex_str: str, charset: str = 'utf-8') str¶
十六进制字符串解码为普通字符串。
- 参数:
hex_str – 十六进制字符串
charset – 字符编码,默认 utf-8
- 返回:
解码后的字符串
- static hex_to_long(hex_str: str) int¶
十六进制字符串转 long(int)。
- 参数:
hex_str – 十六进制字符串(可选 0x 前缀)
- 返回:
long 值
- static hex_to_float(hex_str: str) float¶
十六进制字符串转 float(IEEE 754 位重解释)。
- 参数:
hex_str – 十六进制字符串(可选 0x 前缀)
- 返回:
float 值
- static hex_to_double(hex_str: str) float¶
十六进制字符串转 double(IEEE 754 位重解释)。
- 参数:
hex_str – 十六进制字符串(可选 0x 前缀)
- 返回:
double 值
- static to_hex_long(n: int) str¶
long(int)转十六进制字符串。
- 参数:
n – 整数值
- 返回:
十六进制字符串(小写,无 0x 前缀)
- static to_hex_float(f: float) str¶
float 转十六进制字符串(IEEE 754 位重解释)。
- 参数:
f – float 值
- 返回:
十六进制字符串
- static to_hex_double(f: float) str¶
double 转十六进制字符串(IEEE 754 位重解释)。
- 参数:
f – double 值
- 返回:
十六进制字符串
- static append_hex(builder: list, b: int, lower_case: bool = True) None¶
将单字节转为十六进制追加到列表。
- 参数:
builder – 列表(模拟 StringBuilder)
b – 字节值(0~255)
lower_case – 是否使用小写,默认 True
- static to_big_integer(hex_str: str) int¶
十六进制字符串转大整数。
- 参数:
hex_str – 十六进制字符串(可选 0x 前缀)
- 返回:
大整数(Python int)
- static _remove_hex_prefix(hex_str: str) str¶
移除十六进制字符串的 0x/0X 前缀。
- 参数:
hex_str – 十六进制字符串
- 返回:
去除前缀后的字符串