XMLの属性と構造を保ってJSONへ変換する方法
XMLテキストを入力し、必要に応じてインデント幅とリスト化する要素名を指定して実行します。属性と構造を保ったJSON形式のテキストが生成されます。
このツールでできること
XMLデータをJSON形式のテキストへ変換したいときに使います。XMLの属性と要素の構造を保ったまま扱えるため、設定データや連携用データをJSON向けに整理する場面に適しています。繰り返し登場する子要素は、変換後にリストとして表現されます。入力欄にはXMLテキストを用意してください。JSONへ変換する処理なので、JSONからXMLへ戻す用途や、XML以外の形式の変換には使えません。
XMLをJSONへ変換する手順
- XMLテキストを入力欄に貼り付けます。要素名、入れ子の関係、属性を含めた内容を確認してください。
- JSONの見た目を整えたい場合は、インデント幅を数値で指定します。指定しない場合の既定値は2スペースです。
- 同じ要素が1回しか現れない場合でもリストとして扱いたい要素があれば、対象の要素名をカンマ区切りで指定します。
- 変換を実行し、成功した場合に表示されるJSON形式のテキストを確認します。入力が空、または空白だけなら、空のJSONオブジェクト表現が生成されます。
結果の読み方と注意点
変換結果では、XMLの属性がJSONデータ内に表現され、要素の入れ子構造も維持されます。同名の子要素が繰り返される場合はリストになります。特定の要素を常にリストにしたいときは、実行前にその名前を指定してください。
結果が得られない場合は、まずXMLの開始タグと終了タグの対応、入れ子、属性の記述を見直します。整形式でないXMLは成功したJSON結果になりません。また、解析後のデータをJSONとしてシリアライズできない場合も、変換は成功しません。したがって、出力を別の処理へ渡す前に、必要な構造が保たれているか、リスト化の指定が意図どおりかを確認すると安心です。
使用例
商品情報のXMLで識別用の属性と複数の商品要素を保ったまま、JSON連携用の形を確認したい場合です。
商品情報を表すXMLテキストを入力し、商品要素をリストとして扱う名前を指定して変換を実行します。
属性に対応する情報がJSONデータ内に表現され、同じ商品要素が複数あれば、その要素に対応する値がリストとして含まれる形になります。
制限事項
- 整形式でないXMLや、解析後にJSONとしてシリアライズできないデータは、成功したJSON結果になりません。
よくある間違い
- XMLのタグが閉じられていない、または入れ子が崩れていると変換に失敗します。開始タグと終了タグの対応、属性の引用符、要素の順序を確認してから再実行してください。
よくある質問
XMLを入力しなくても変換できますか?
入力が空または空白だけの場合は、空のJSONオブジェクト表現が生成されます。
JSONのインデント幅は変更できますか?
指定できます。インデント幅は数値で設定でき、指定しない場合は2スペースです。
変換に失敗するのはどのような場合ですか?
整形式でないXMLの場合は成功したJSON結果になりません。タグの対応と入れ子を確認してください。