TOML 转 JSON 转换器
将 TOML(Cargo.toml、pyproject.toml、配置文件)转换为 JSON,完整支持 TOML 1.0:表、表数组、日期和大整数。免费。
完全在浏览器中运行,您的数据不会被上传。
相关工具
查看全部什么是 TOML 转 JSON?
粘贴 Cargo.toml、pyproject.toml 或应用配置等 TOML 文档,即可得到等价的 JSON。表变为对象,表数组变为对象数组,TOML 日期变为 ISO 8601 字符串。
如何使用 TOML 转 JSON
- 将 TOML 粘贴到 TOML 输入框中,或使用加载示例或打开文件。
- 选择 JSON 的缩进。
- JSON 输出会随你的输入实时更新;可使用复制或下载。
示例
输入
title = "T" [db] ports = [8000, 8001]
输出
{
"title": "T",
"db": {
"ports": [
8000,
8001
]
}
} 何时使用 TOML 转 JSON
适合查看 TOML 配置、将其提供给 JSON 工具或迁移设置。注释和键的格式不会保留,而且 JSON 无法记录某个值原本是 TOML 日期还是字符串。
TOML 转 JSON 的工作原理
解析使用 smol-toml,这是一个符合 TOML 1.0 的解析器。大于 2^53 的整数会被精确保留(写成普通的 JSON 数字而不是被取整),带偏移的日期时间变为 UTC 的 ISO 字符串,本地日期和时间按原样写出,语法错误会连同行号一起报告。inf 和 nan 在 JSON 中没有对应值,会变为 null。
常见用例
- 查看 Cargo.toml 文件的依赖表
- 为脚本转换 pyproject.toml 的元数据
- 把 TOML 应用配置迁移为 JSON
- 验证 TOML 语法并查看错误位置
常见问题
日期是如何转换的?
带偏移的日期时间会变成 ISO 8601 的 UTC 字符串(2024-01-01T00:00:00.000Z);1979-05-27 这样的本地日期保持原样。
大整数安全吗?
安全,超出 JavaScript 安全范围的整数会按 BigInt 解析,并写成精确的 JSON 数字。
有 JSON 转 TOML 的选项吗?
本工具没有;它只支持 TOML 转 JSON。
推荐的下一步
JSON 格式化
在线格式化并美化 JSON,支持 2 空格、4 空格或制表符缩进,可按字母排序键,语法错误会精确提示行号和列号。完全在浏览器中运行。
转义/反转义工具
一个工具搞定字符串转义与反转义:支持 JSON、JavaScript、HTML、XML、URL 组件、正则表达式、SQL 字面量、CSS 字符串和 Shell 参数。
JSON 压缩
移除 JSON 中所有无意义的空白,同时保持值、键顺序和大数字不变,并显示节省的体积。免费且在浏览器内运行。
JSON 路径查找
以 JSONPath、JavaScript 或 jq 语法列出 JSON 文档中的每个路径,点击路径即可查看其值,也可输入路径直接查询。在浏览器中运行。
JSON 对比
按结构比较两个 JSON 文档:以 JSONPath 显示新增、删除和修改的值,忽略键顺序和排版。免费,在浏览器中运行。
JSON 查询(JSONPath)
用 JSONPath 查询 JSON:支持通配符、递归下降、切片以及 [?(@.price < 10)] 这样的过滤表达式,结果随输入实时更新。不是 jq 语法。