TOML 转 JSON 转换器

将 TOML(Cargo.toml、pyproject.toml、配置文件)转换为 JSON,完整支持 TOML 1.0:表、表数组、日期和大整数。免费。

完全在浏览器中运行,您的数据不会被上传。

相关工具

查看全部

什么是 TOML 转 JSON?

粘贴 Cargo.toml、pyproject.toml 或应用配置等 TOML 文档,即可得到等价的 JSON。表变为对象,表数组变为对象数组,TOML 日期变为 ISO 8601 字符串。

如何使用 TOML 转 JSON

  1. 将 TOML 粘贴到 TOML 输入框中,或使用加载示例或打开文件。
  2. 选择 JSON 的缩进。
  3. 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。

推荐的下一步

探索更多分类