工作原理
这些格式分属两个家族。JSON、YAML 和 TOML 是有真实类型的数据格式:数字就是数字,布尔就是布尔,null 与空字符串不同。XML 和 INI 则是没有类型系统的标记格式,所有值都是文本,因此转入时会丢失类型信息,转出时需要推断。本工具在从 XML、CSV、INI 转换时会做类型推断,把裸写的 true、false、null 视为对应值,把纯数字字符串视为数字,并标出推断发生的位置。
YAML 与 TOML 是开发者最常需要互转的两种格式。YAML 对缩进敏感,支持锚点与别名复用,并且依据规范版本和解析器不同会分化出多个互不兼容的方言。TOML 则明确无歧义——每个值都通过键赋值,表由表头声明——且不依赖有效空白,因此不容易被一次错误粘贴弄坏。TOML 还拥有 JSON 所没有的原生日期时间类型;把它们转成 JSON 会变成 ISO 8601 字符串,转回来则是有损操作,值得检查。
XML 在结构上与其他格式都不同,它是一棵带属性、混合内容与重复兄弟元素的树。把 XML 转成 JSON 需要做选择:属性可以变成带 @ 前缀的键,也可以变成嵌套对象;重复元素可以变成数组,也可以在有第二个元素之前保持为单个对象。本工具采用一致的映射——属性加 @ 前缀、文本内容放在 #text 下、重复元素转为数组——并把结果显示出来,让你看到结构形状,而不是在生产环境才发现。
CSV 是其中最宽松的。嵌套数据没有任何标准,只能被拍平成带点号的列名,例如 user.address.city,而这恰恰是大多数分析工具和表格导入所期望的形式。反向转换会把这些点号路径重新展开为嵌套对象。分隔符、引号与表头处理都可配置,因为从欧洲版 Excel 导出的分号分隔文件同样是 CSV,用逗号解析只会得到一列混乱的结果。
常见应用场景
- 把 JSON 夹具转成 YAML,以便粘贴进 Kubernetes 或 CI 配置。
- 把 TOML 应用配置转成 JSON,与另一套环境做对比。
- 把嵌套的接口响应拍平成 CSV 列,导入表格软件或数据仓库。
- 把遗留服务的 INI 或 properties 文件转成结构化的 YAML。
- 把 YAML 片段转成 JSON 来确认它到底是什么结构——JSON 的结构是显式的。
- 把 XML 数据源转成 JSON,供没有 XML 解析器的服务使用。
最后更新: 2026-10-14