INI から JSON への変換ツール

INI 設定を JSON に、JSON を INI に、ブラウザ内で相互変換できます。セクション・コメント・グローバルキーをすべて処理し、データは端末上に留まります。

INI から JSON への変換ツールは完全にブラウザ内で動作します。貼り付けた INI と JSON 設定はローカルで解析され、端末から外に出ることも ArrayKit にアップロードされることもありません。

JSON 整形ツールを開く

INI から JSON への変換 について

INI から JSON への変換ツールは、昔ながらの INI 設定ファイルを読み込んできれいで構造化された JSON に変換し、JSON をそのまま INI に戻します。[section] ヘッダー、key=value のエントリ、トップレベルのセクションなしグローバルキー、そして ';' や '#' で始まるコメント行を理解し、コメントは静かにスキップします。既定では数値と真偽値が変換されるので port=5432 は本物の数値に、enabled=true は本物の真偽値になります。あるいはすべての値を文字列のまま保つこともできます。逆方向では、トップレベルのスカラーがグローバルキーになり、ネストした JSON オブジェクトが名前付きの [section] になります。レガシーなツールの設定を移行するとき、INI 設定を JSON ベースのパイプラインにつなぐとき、2 つの設定を共通の形で差分表示するときに便利です。すべて端末上で動作し、設定がブラウザから外に出ることはありません。

機能

INI から JSON への変換 の使い方

  1. INI → JSON 方向を選ぶ(または JSON → INI に切り替える)
  2. INI 設定または JSON を入力ボックスに貼り付ける
  3. 文字列ではなく数値と真偽値が欲しい場合は型変換を切り替える
  4. 変換後の出力をコピーするか .json または .ini ファイルとしてダウンロードする

入力

name = ArrayKit

[database]
host = localhost
port = 5432
enabled = true

出力

{
  "name": "ArrayKit",
  "database": {
    "host": "localhost",
    "port": 5432,
    "enabled": true
  }
}

グローバルキーと [database] セクションが、トップレベルのフィールドとネストしたオブジェクトになります。

よくあるエラーとトラブルシューティング

よくある質問

この変換ツールは INI のセクションをどう JSON に対応付けますか?
各 [section] ヘッダーは、そのセクション名をキーとするネストした JSON オブジェクトになり、その下の key=value 行がそのオブジェクトのフィールドになります。同じ名前の重複ヘッダーは 1 つのオブジェクトにまとめられます。
どの [section] よりも前に現れるキーはどうなりますか?
最初のセクションヘッダーより前に書かれたキーはグローバルです。JSON オブジェクトのトップレベルにセクションオブジェクトと並んで置かれるので、何も失われません。
';' や '#' のコメントは JSON 出力に残りますか?
いいえ。';' や '#' で始まる行は行全体のコメントとして扱われ、INI → JSON 変換中にスキップされるので JSON には現れません。値の後のインラインテキストはその値の一部として保持されます。
JSON → INI は何をセクションにするかどう決めますか?
トップレベルのスカラー値は最初に出力されるグローバルな key=value 行になり、各トップレベルのネストしたオブジェクトが名前付きの [section] になります。ネストした配列やより深いオブジェクトは JSON エンコードされたクォート付きの値として書かれます。
変換ツールが値を数値や真偽値に変えるのを止められますか?
はい。型変換をオフにすると、すべての INI 値が文字列のまま保たれるので、port=5432 は JSON で "5432" のまま、enabled=true は "true" のままです。
変換のために私の INI や JSON 設定はアップロードされますか?
いいえ。INI から JSON への変換ツールは、ローカルの JavaScript を使ってすべてをブラウザ内で解析・再構築します。貼り付けた設定は端末から外に出ることはなく、ArrayKit に送られません。

関連ツール

すべての ArrayKit ツール