功能

ToonConverter 通过 15 个 SDK 提供 TOON 与 21+ 种数据格式之间的双向转换,无任何外部依赖。

JSON

无损,基础转换管道

XML

命名元素 = 键, <item> = 数组, xsi:nil = null

CSV (RFC 4180)

多分隔符:, ; \t | — 带引号字段、嵌入式换行

EDI 定宽

以 TOON 格式定义字段布局,可配置填充/行尾

TSV

制表符分隔,委托给带制表符锁定的 CSV 引擎

YAML

自研零依赖解析器(块子集)

JSONC

去除 // + /* */ 注释,然后走 JSON 管道

JSON5

自定义分词器(无引号键、十六进制、尾随逗号)

SOAP

带命名空间剥离的 XML 包装器,SOAP 1.1/1.2

GeoJSON

RFC 7946 验证,坐标折叠为 JSON 字符串

KML

带兄弟分组的自研 XML 解析器

GPX

XML 数组包装器,纬度/经度自动解析为数字

LOG

可配置正则表达式,基于模板的输出

Syslog

RFC 5424 + RFC 3164 自动检测,PRI 解析

NPY

NumPy .npy 二进制格式 (NEP-1 v1.0)

FITS

天文数据格式 (FITS 4.0 主 HDU)

MAT v5

MATLAB 二进制文件格式(10 种数值类)

DTA v118

Stata 14 二进制格式(5 种数值类型)

RData

R RDS V2/V3 XDR 二进制序列化

SHP

ESRI Shapefile(5 种 2D 形状类型)

直接序列化

跳过 JSON 中间步骤 — 将原生对象直接序列化为 TOON。

Language Method Description Speed
TypeScript toToon() 通过 normalizeValue() 直接 最优
Python to_toon() 支持 dataclass 的直接 最优
Go ToTOON() 带 struct 标签的反射 最优
Rust to_toon() Serde 零开销 最优
Java toToonDirect() 直接反射(快约 40%) 快约 40%
C# ToToonDirect() 直接反射(快约 47%) 快约 47%

配置选项

编码器选项

indent_size 缩进大小(默认:2)
strict 严格模式(默认:true)
key_folding "off" 或 "safe"(默认:"off")
default_delimiter 逗号 / 制表符 / 竖线(默认:逗号)

解码器选项

strict 严格模式(默认:true)
expand_paths "off" 或 "safe"(默认:"off")
indent_size 缩进大小(默认:2)