TOML 转 JSON
把 TOML 转成 JSON:日期类型转 ISO 字符串,支持缩进选择、键排序,非法 TOML 会指出具体行列与出错位置,并给出键数与深度统计。
浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。
TOML
JSON
顶层键: 0键总数(含嵌套): 0最大深度: 0JSON 字节数: 0
- 没有解析到任何键,结果是一个空对象。
这个工具能做什么
- 把 Cargo.toml、pyproject.toml、Netlify / Hugo 配置这类 TOML 转成 JSON,喂给只认 JSON 的程序或接口。
- 对照检查表与数组表的结构:转换结果原样保留嵌套,[server] 会变成嵌套对象,[[users]] 会变成对象数组。
- 定位 TOML 语法错误:解析失败时会指出具体行号、列号和出错的那段代码,不用靠肉眼数括号。
- 确认类型有没有被正确识别:日期时间会变成 ISO 字符串,inf 和 nan 这类 JSON 没有的值会转成字符串并单独警告。
示例
输入
title = "UniKit" version = "0.1.0" release_date = 2026-10-10 [owner] name = "Tom" roles = ["admin", "dev"]
输出
{
"title": "UniKit",
"version": "0.1.0",
"release_date": "2026-10-10",
"owner": {
"name": "Tom",
"roles": [
"admin",
"dev"
]
}
}默认 2 空格缩进;TOML 的日期类型会转成 ISO 字符串,所以 release_date 在 JSON 里是带引号的 "2026-10-10"。
常见问题
TOML 里的日期为什么变成了字符串?
JSON 标准里没有日期类型。解析器把 TOML 的日期时间统一转成 ISO 8601 字符串(毫秒全是 0 时省略 .000),接收方可以直接用 new Date() 解析。如果你需要的是毫秒时间戳,再自己转换一次。
输入是空的会怎样?
返回一个空对象 {},并提示「没有解析到任何键」,不会当成错误。只有真正的语法问题才会报错并给出行列号。
解析失败时能定位到哪一行吗?
能。错误里带行号、列号,以及一段带插入符的代码片段,页面上直接显示「第 X 行第 Y 列」,照着改即可。
TOML 里的 inf 和 nan 怎么处理?
JSON 不允许这两个值。工具会把它们转成字符串 "inf"、"-inf"、"nan",并在结果里列出受影响的键路径,避免静默丢数据。
我的配置文件会被上传吗?
不会。解析用的是打包进页面的解析器,整个过程在你的浏览器里完成,不发送任何网络请求,断网也能用。
关键词:tomljsontoml 转 jsonconverter配置转换smol-tomlcargo.tomlpyproject.toml