hutool.core.util.charset

字符集工具类

Module Contents

Classes

CharsetUtil

字符集工具类,提供字符集转换和常量定义。

API

class hutool.core.util.charset.CharsetUtil

字符集工具类,提供字符集转换和常量定义。

UTF_8 = 'utf-8'

UTF-8 字符集

GBK = 'gbk'

GBK 字符集

ISO_8859_1 = 'iso-8859-1'

ISO-8859-1 字符集

US_ASCII = 'us-ascii'

US-ASCII 字符集

static charset(charset_name: str) str

获取字符集名称,为 None 时返回 UTF-8。

参数:

charset_name – 字符集名称

返回:

处理后的字符集名称(小写)

static default_charset() str

获取系统默认字符集。

返回:

系统默认字符集名称

static convert(source: bytes, src_charset: str, dest_charset: str) bytes

将字节数据从源字符集转为目标字符集。

参数:
  • source – 待转码的字节数据

  • src_charset – 源字符集

  • dest_charset – 目标字符集

返回:

转码后的字节数据

抛出:
  • UnicodeDecodeError – 源数据无法用 src_charset 解码时

  • UnicodeEncodeError – 文本无法用 dest_charset 编码时

static convert_str(source: str, src_charset: str, dest_charset: str) str

将字符串从源字符集转码为目标字符集。

参数:
  • source – 待转码的字符串

  • src_charset – 源字符集

  • dest_charset – 目标字符集

返回:

转码后的字符串

抛出:
  • UnicodeEncodeError – 字符串无法用 src_charset 编码时

  • UnicodeDecodeError – 字节无法用 dest_charset 解码时

static clean_bom(content: str) str

清理字符串开头的 BOM 标记(\ufeff)。

参数:

content – 待清理的字符串

返回:

去除 BOM 后的字符串

static clean_invalid(content: str) str

清除字符串中的无效控制字符(ASCII 0x00~0x1F 中除 t、n、r 以外的字符)。

参数:

content – 待清理的字符串

返回:

清除无效字符后的字符串

static parse(charset_name: str) str

解析字符集名称,None 或空时返回 UTF-8。

参数:

charset_name – 字符集名称

返回:

字符集名称(小写)

static convert_file(src_file: str, dest_file: str, src_charset: str, dest_charset: str) str

转换文件字符集。

参数:
  • src_file – 源文件路径

  • dest_file – 目标文件路径

  • src_charset – 源字符集

  • dest_charset – 目标字符集

返回:

目标文件路径

static system_charset_name() str

获取系统字符集名称。

返回:

系统字符集名称

static default_charset_name() str

获取默认字符集名称(同 system_charset_name)。

返回:

默认字符集名称

static detect_charset(data: bytes) str

简单检测字节数据的字符集。

通过检查 BOM 标记判断编码,无法判断时返回 UTF-8。

参数:

data – 字节数据

返回:

检测到的字符集名称