コンテンツへスキップ
🛠️ToolsShed

TOML ↔ JSONコンバーター

TOMLとJSON形式を相互変換し、TOML構文を検証します。

このツールについて

TOML(Tom's Obvious, Minimal Language)とJSONは、ソフトウェア開発で広く使われる2つの設定・データ形式です。TOMLはRustプロジェクト、Pythonツール、モダンなアプリケーション設定に見られる人間にとって読みやすい形式で、JSONはWeb APIやWebアプリケーションにおけるデータ交換の標準です。これら2つの形式を相互変換することは、プロジェクトの移行、異なるシステム間での設定共有、特定の形式を必要とするツールとの連携時に不可欠です。

このコンバーターを使うには、TOMLまたはJSONコンテンツを入力欄に貼り付けるだけで、ツールが形式を自動判定して他方に変換します。また入力されたデータの構文をバリデーションし、変換前にエラーを報告します。このツールは、サードパーティライブラリの統合、環境設定の管理、API向けデータの標準化、設定ファイルの構文チェック時に活躍します。

このコンバーターはネストされた構造、配列、インラインテーブル、日付や浮動小数点数を含むすべてのTOMLおよびJSON形式のデータ型に対応しています。TOMLのコメントは変換時に保持されないため、コメント保存が重要な場合はバージョン管理または別途ドキュメント化を検討してください。開発者、DevOpsエンジニア、複数の設定形式を扱うすべての人に最適なツールです。

よくある質問

コード実装

# Python 3.11+ has tomllib built-in (read-only)
# For older versions: pip install tomli
# For writing: pip install tomli-w

import tomllib  # Python 3.11+
# import tomli as tomllib  # Python < 3.11

toml_text = """
[package]
name = "my-app"
version = "1.0.0"
authors = ["Alice <alice@example.com>"]

[dependencies]
requests = ">=2.28.0"
flask = { version = ">=3.0", optional = true }

[[server]]
host = "web1.example.com"
port = 8080

[[server]]
host = "web2.example.com"
port = 8081
"""

# Parse TOML string
data = tomllib.loads(toml_text)
print(data["package"]["name"])      # my-app
print(data["dependencies"])          # {'requests': '>=2.28.0', ...}
print(data["server"])                # [{'host': 'web1...', 'port': 8080}, ...]

# Parse from file
with open("pyproject.toml", "rb") as f:  # Must open in binary mode!
    config = tomllib.load(f)

# Writing TOML (requires tomli-w or tomllib doesn't support write)
# pip install tomli-w
import tomli_w
output = tomli_w.dumps({"key": "value", "count": 42})
print(output)
# key = "value"
# count = 42

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.