ツール
JA

XMLをJSONに変換

XMLを貼り付けるだけで、すぐにJSONに変換できます。属性、テキスト、繰り返し要素はシンプルで予測しやすいルールで変換され、配列、値の型、名前空間プレフィックスの扱いはオプションで調整できます。

XML

JSON

プライバシー保護:データはお使いのブラウザ内で処理され、アップロードされることはありません。

XMLをJSONに変換する方法

  1. XMLを貼り付けるか、.xmlファイルをエディタにドロップ、またはURLから読み込みます。入力に合わせてJSONが表示されます。
  2. 属性のプレフィックスとテキストのキーを調整し、常に配列にするか、数値と真偽値を変換するか、名前空間プレフィックスを無視するかを選びます。
  3. JSONをコピーするか、.jsonファイルとしてダウンロードします。

XMLがJSONに変換されるルール

XMLJSON
<name>Ada</name>"name": "Ada"
<price>9.90</price>"price": 9.90(桁はそのまま保持)
<item id="7">Pen</item>"item": {"@id": 7, "#text": "Pen"}
<tag>a</tag><tag>b</tag>"tag": ["a", "b"]
<note/>"note": null
<![CDATA[a < b]]>テキスト"a < b"
名前空間プレフィックスを無視をオンにした<soap:Body>"Body"

「常に配列にする」オプションが重要な理由

1回だけ出現する要素は単一の値になりますが、2回出現すると配列になります。そのため、JSONを読み込むコードは両方の形に対応しなければならず、リストの項目がたまたま1つだけのときに起きる典型的なバグの原因になります。子要素を常に配列にするにチェックを入れると、すべてが配列になります。括弧が少し増える代わりに、構造が予測しやすくなります。

コードでXMLをJSONに変換する方法

よくある質問

変換で失われる情報はありますか?

要素名、属性、テキストは保持され、数値も桁が正確に保たれます。ただし、コメント、処理命令、子要素の間にあるテキストの位置(混在コンテンツ)はJSONでは表現できません。

JSONをXMLに戻すことはできますか?

はい。姉妹サイトJSON FormatterのJSON→XML変換ツールで変換できます。同じ@と#textの規則を採用しています。

名前空間はどう扱われますか?

初期設定では、soap:Bodyのようなプレフィックス付きの名前はそのままキーとして保持され、xmlns宣言は属性として出力されます。名前空間プレフィックスを無視にチェックを入れると、宣言を除いたBodyのようなシンプルな名前になります。

値が数値ではなく文字列になるのはなぜですか?

007や1,000のような値は単純な10進数ではないため、データが失われないよう文字列のまま残ります。すべての値を文字列として保持したい場合は、数値とtrue/falseを変換のチェックを外してください。