hutool.core.text.csv

Module Contents

Classes

CsvUtil

CSV工具类

API

class hutool.core.text.csv.CsvUtil

CSV工具类

static read(path: str, charset: str = 'utf-8') List[List[str]]

读取CSV文件为二维列表

参数:
  • path – CSV文件路径

  • charset – 文件编码,默认utf-8

返回:

二维列表,每个元素为一行的数据

static read_string(csv_str: str) List[List[str]]

读取CSV字符串为二维列表

参数:

csv_str – CSV格式的字符串

返回:

二维列表,每个元素为一行的数据

static write(path: str, data: List[List[str]], charset: str = 'utf-8') None

写入CSV文件

参数:
  • path – CSV文件路径

  • data – 二维列表数据

  • charset – 文件编码,默认utf-8

static write_string(data: List[List[str]]) str

将二维列表转为CSV字符串

参数:

data – 二维列表数据

返回:

CSV格式的字符串

static list_to_csv(data: List[Dict[str, Any]], separator: str = '\t', include_header: bool = True) str

将 list of dict 转为 CSV 字符串。

以第一个 dict 的键作为表头。

参数:
  • data – 字典列表

  • separator – 分隔符,默认制表符 \t

  • include_header – 是否包含表头行,默认 True

返回:

CSV 格式字符串

data = [{"name": "Alice", "age": 30}, {"name": "Bob", "age": 25}]
csv_str = CsvUtil.list_to_csv(data, separator=",")
assert "name,age" in csv_str
static write_list_to_csv(file_path: str, data: List[Dict[str, Any]], separator: str = ',', charset: str = 'utf-8', include_header: bool = True) None

将 list of dict 写入 CSV 文件。

参数:
  • file_path – 目标文件路径

  • data – 字典列表

  • separator – 分隔符

  • charset – 文件编码

  • include_header – 是否包含表头行