メインコンテンツへスキップ

TOML ↔ JSON変換

TOMLとJSONを双方向でリアルタイム変換する無料オンラインツール。Cargo.toml(Rust)・pyproject.toml(Python)・Hugo・Netlify等の設定ファイルをJSON化して確認・加工したり、JSONからTOMLを作成できる。インデント設定・サンプル付き、ブラウザ完結で外部送信なし。

TOML形式(Cargo.toml や pyproject.toml でおなじみ)と JSON を双方向で変換するツールです。設定ファイルの構造を確認したい・加工したい・別ツールに移したい時に便利です。

TOML ↔ JSON変換
インデント
TOMLを入力してください...

// TOML ↔ JSON変換の機能と特徴

TOMLとは・YAMLとの違い

TOML(トムル)は、人間が読み書きしやすいことを重視した設定ファイル用のフォーマットです。YAMLに似ていますが、インデントに依存しないので階層関係がずれにくく、初心者にも扱いやすいのが特徴。RustのCargo.toml、Pythonのpyproject.toml、Hugo、Netlify、多くのCLIツールで採用されており、開発現場で目にする機会が増えています。

TOMLをJSONに変換する理由

TOMLをJSONにすると、プログラムから機械的に処理しやすくなります。「設定内容をAPIに送る」「複数の設定ファイルを比較・マージする」「構造を可視化する」といった作業がぐっと楽になります。逆に、既存のJSONを人間が読み書きしやすいTOMLにすれば、設定ファイルとして配布・共有しやすくなります。

対応する構文(テーブル・配列テーブル・日時ほか)

通常のキー・バリューはもちろん、テーブル・配列テーブル・インラインテーブル・複数行文字列・数値(整数と小数)・日時・配列など TOML v1.0 仕様の全構文に対応しています。難しい構文が入っていても、そのまま貼り付けてJSON化できます。

YAML・CSV・XMLの変換もしたいとき

本サイトには YAML の変換ツール YAML⇔JSON変換、CSV版 CSV⇔JSON変換、XML版 XML⇔JSON変換 もあります。データ形式を移行するときは、これらを組み合わせて使うと便利です。

// TOML ↔ JSON変換に関するよくある質問

TOMLってどんな時に使うんですか?

Rust の Cargo.toml、Python の pyproject.toml、Hugo・Netlify・CLIツールの設定ファイル、DevContainer の一部設定など、多くの開発ツールで採用されています。YAMLと同じ用途で使われることが多く、「YAMLよりインデントミスに強い」「JSONより人間が書きやすい」というポジションです。プログラマーが日常的に触れる形式のひとつです。

なぜJSONに変換する必要があるんですか?

TOMLはそのままではプログラムから扱いにくいためです。JSON化すればJavaScript・Python・Go・Rustなど、あらゆる言語で標準的に読み込めます。設定内容を可視化して構造を把握したい、複数ファイルを機械的に比較したい、Web APIに送信したい、といった場面で有用です。

どのTOMLバージョンに対応していますか?

TOML v1.0 仕様に完全準拠しています。テーブル・配列テーブル・インラインテーブル・複数行文字列・数値(整数・浮動小数・16進など)・日時・配列など、実務で使うすべての構文に対応。Cargo.toml や pyproject.toml など、現行の設定ファイルはそのまま貼って変換できます。

逆にJSONからTOMLに変換もできますか?

はい、変換方向のボタンで「JSON → TOML」に切り替えるだけで可能です。JSONオブジェクトをTOML形式に変換して、人間が読み書きしやすい設定ファイルとして出力できます。ただしTOMLは仕様上、ルート要素がオブジェクト(テーブル)である必要があるため、配列やプリミティブ値をルートにはできません。

「JSONから配列を変換できない」と出ました

TOMLの仕様上、トップレベルは必ずオブジェクト(キー・バリューの塊)でなければなりません。JSONが `[1,2,3]` のように配列で始まっている場合は変換できないので、`{"items": [1,2,3]}` のようにオブジェクトで包んでから変換してください。

変換後のTOMLはそのまま設定ファイルとして使えますか?

はい。生成されたTOMLは標準仕様に準拠しているので、Cargo・Poetry・Hugo など各種ツールにそのまま渡せます。COPYボタンでクリップボードにコピーし、`.toml` 拡張子のファイルに貼り付けて保存すればすぐに使えます。

JSONの出力形式(インデント)は選べますか?

はい、2スペース・4スペース・タブから選択できます。プロジェクトのコーディング規約に合わせて選んでください。GitHubやVS Codeの標準は2スペース、Python・Rust コミュニティは4スペースが多いです。

サンプルデータで動作を試したい

「サンプル」ボタンを押すと、典型的な設定ファイル形式のサンプルTOMLが挿入されます。テーブル・配列・複数行文字列など各種構文を含んでいるので、変換後にどうJSON化されるかを確認するのに使えます。TOMLの構文を覚える練習にも使えます。

YAMLとの違いは?

両方とも設定ファイル向けの形式ですが、TOMLはインデントに依存しないので「タブとスペースが混じってエラー」といった問題が起きにくいのが特徴です。一方、YAMLは複雑なネスト構造をコンパクトに書けます。用途による使い分けが多く、Kubernetes・Docker Compose・GitHub Actions は YAML、Rust・多くのCLIツールは TOML を採用しています。YAMLはYAML⇔JSON変換で扱えます。

TOMLの設定内容はサーバーに送信されますか?

いいえ、すべての処理はブラウザ内で完結します。入力データがサーバーに送信されることはありません。社内設定・APIキーが含まれる設定ファイル・未公開プロジェクトのCargo.tomlなど、機密性の高いデータも安心して変換できます。

// TOML ↔ JSON変換の使い方

  1. TOML→JSONかJSON→TOMLを選ぶ

    「TOML → JSON」または「JSON → TOML」ボタンを選択します。既存の設定ファイルを解析したいならTOML→JSON、JSONから設定ファイルを作りたいならJSON→TOMLを選びます。

  2. TOMLまたはJSONを貼り付け

    入力欄にTOMLまたはJSONのテキストを貼り付けます。「サンプル」ボタンで典型的な設定ファイルを試すこともでき、TOMLに触れたことがない方の学習用途にも活用できます。

  3. 変換した設定ファイルをコピー

    変換結果がリアルタイムで表示されます。COPYボタンでクリップボードにコピーして、そのままファイル保存・API送信・エディタへの貼り付けに使ってください。

カテゴリ データ形式