csv

package module
v0.0.0-...-2a644cb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 6, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package csv 定义一些基于 csv 的工具函数

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ReadCSVStringMaps

func ReadCSVStringMaps[LINE ~string, COL ~string, V ~string](
	data []byte,
) (map[LINE]map[COL]V, []COL, error)

ReadCSVStringMaps 读取 CSV 表格数据并转换为 KKV 格式, 其中每一行的第一列为最外层的 map key, 第一行的每一列作为内层 map 的 key, 其余的列为 value。最左上角的单元格无意义

func WriteCSVStringMaps

func WriteCSVStringMaps[LINE ~string, COL ~string, V ~string](
	data map[LINE]map[COL]V, columnSequences []COL,
) ([]byte, error)

WriteCSVStringMaps 将 map[LINE]map[COL]V 写入为 CSV 字节流。 输出的 CSV 格式与 ReadCSVStringMaps 兼容,即第一行为列标题(第一个单元格为空), 后续每行第一列为行键,其余列为对应的值。

参数说明:

  • data: 要写入的数据,格式为 map[行键]map[列键]值
  • columnSequences: 指定列的优先输出顺序。 如果为 nil,则所有列按字母顺序排序输出; 如果指定了列顺序,则优先按指定顺序输出这些列,数据中存在但未在 columnSequences 中指定的列 会按字母顺序排在后面输出。columnSequences 中不存在于数据中的列会被忽略。

行的输出顺序始终按字母排序以保证确定性输出。

Types

This section is empty.

Directories

Path Synopsis
Package simpledb 实现一个基于 CSV 的极简 KV 数据库
Package simpledb 实现一个基于 CSV 的极简 KV 数据库

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL