INIからJSONへの変換ツール
INIファイルは、WindowsアプリやPHPの標準ファイルphp.ini、多くのCI実行ツールなどに依然として使用されている、キーと値が直接対応する構造の設定形式です。一方、JSONはほとんどの現代のライブラリが採用している標準的なフォーマットです。このコンバーターはINIファイルを読み取り、[section]ブロック、key = value形式の行、セミコロンによるコメントをすべて適切に認識し、各セクションをオブジェクトとして扱った上で同等のJSONデータを返します。
INIをJSONに変換する方法
-
1
INIの内容を貼り付けます
角括弧で囲んだセクション、その下にキー=値のペアを配置します。
-
2
パース
コメント(「;」および「#」)や空白行は削除されます。「=」の周囲の空白は無視されます。
-
3
JSONにマッピング
各セクションはJSONオブジェクトとして扱われます。セクション外のトップレベルのキーはルートに移動します。
-
4
JSONをコピーします
出力は2スペースのインデントで見やすく整形されます。
例
入力:
; database config
[database]
host = db.example.com
port = 5432
user = app
[cache]
driver = redis
ttl = 3600
出力:
{
"database": {
"host": "db.example.com",
"port": "5432",
"user": "app"
},
"cache": {
"driver": "redis",
"ttl": "3600"
}
}
コンバーターが扱うINIの特殊な挙動
| INI構文 | 挙動 |
|---|---|
; コメント |
削除される |
# コメント |
削除される(非標準だが一般的) |
| セクションなし | キーはルートオブジェクトに入ります |
| 重複キー | 最後の値が優先されます |
key[] 配列形式 |
JSON配列(PHPスタイル)になります |
| 引用符付きの値 | 引用符は削除され、内部の内容は保持されます |
実行しないこと
- 型推定。INIは厳密に型付けされており、42と「42」は見た目が同じです。「数値/ブール値を試す」ステップを選択しない限り、すべての値はJSON文字列として出力されます。
- ネストされたセクション。標準的なINIファイルにはネストされたセクションは存在しません。
[database.primary]ブロックはネストされたオブジェクトではなく、単一のキーとして保持されます。 - 複数の行にわたる値設定(INI自体が許可する範囲を超える場合)
INIがまだ意味を持つ場合
非技術的な編集者が使用するフラット構成の場合、INI形式は圧倒的に優れています。一行につき1つのキーが設定でき、波括弧も不要で、柔軟性に優れています。一方、ツールがデータを処理する必要があり、ネスト構造が重要な場面ではJSON形式の方が適しています。
よくある質問
INIは厳密に型付けされているため、「42」と「四十二」の両方が有効な値であり、コンバーターはヒントなしではこれらを区別できません。数値型のJSONが必要な場合は、後処理ステップを実行するか、ツールがサポートしている場合に「自動型推定」を有効にしてください。
INI仕様にはネストされたセクションは含まれていません。[a.b]は名称に点が含まれている単一のセクションです。これをネスト型JSONに変換することは標準ではなく慣習に過ぎないため、コンバーターはセクションをフラットな構造で保持します。
はい。同一セクション内の複数のkey[] = valueラインはJSON配列に統合されます。一方、単一のkey[]は形状の一貫性を維持するため、依然として1要素の配列として出力されます。
解析はブラウザ内で行われ、コンテンツは外部に送信されません。
関連ツール
ASCII表リファレンス
0から127までの完全なASCII表です。NUL、LF、DELなどの制御コードを含め、各文字の10進数、16進数、8進数、2進数、HTML数値文字参照を表示します。
HTML文字参照
HTMLエンティティの検索可能なリスト、その名称コードおよび数値コード、および特殊文字や記号のワンクリックコピー機能を提供します。
キーボードショートカット一覧
macOS、Windows、Linux向けに、VS Code、Chrome、GNU Readlineを使うBashの公式資料に基づく既定ショートカットを検索できます。
EditorConfig ジェネレーター
インデントのスタイルとサイズ、改行コード、文字コード、空白ルールを指定して .editorconfig ファイルを生成し、IDE やエディタをまたいで書式を統一できます。
メールアドレス検証ツール
メールアドレスを検証します。RFC 5322構文チェック、MXレコードのライブ確認に加え、ローカル部、ドメイン、長さの詳細を表示します。メールは送信されません。
Markdownチートシート
見出し、リスト、表、コード、リンク、画像、GFM構文を、実際のプレビューとコピーできる例で確認できる実用的なMarkdownリファレンスです。
このツールは他の言語でも利用できます
- Konverter INI ke JSON [ID]
- เครื่องแปลงข้อมูลจาก INI เป็น JSON [TH]
- Konwerter INI na JSON [PL]
- Conversor de INI para JSON [PT]
- INI → JSON 변환기 [KO]
- INI till JSON-konverterare [SV]
- INI zu JSON Konverter [DE]
- Chuyển đổi từ INI sang JSON [VI]
- محول INI إلى JSON [AR]
- Convertidor de INI a JSON [ES]
- Convertisseur INI en JSON [FR]
- INI naar JSON-converter [NL]
- INI to JSON Converter [EN]
- Convertitore da INI a JSON [IT]
- Конвертер из INI в JSON [RU]
- INI'den JSON'a Dönüştürücü [TR]
- INI到 JSON 转换器 [ZH]