XML ↔ JSON コンバーター 🔒 データがブラウザの外に出ることはありません。
ブラウザ内でXMLとJSONを相互変換。
属性は @キー に · 繰り返しタグは配列になります
Ctrl+Sダウンロード
このツールについて
XMLはSOAP API、RSS/Atomフィード、Androidレイアウト、そして数え切れないレガシーな企業システムで使われる一方、JSONは現代の標準です。このコンバーターは両者をつなぎます:属性は@nameキーになり、属性と一緒にあるテキストノードは#textになり、同じ親の下で繰り返されるタグはJSON配列になります——一般的なXML→JSONライブラリと同じ規則なので、出力に見覚えがあるはずです。
変換はブラウザ内蔵のDOMParserで行われます——XMLライブラリはダウンロードされず、データもどこにもアップロードされません。逆方向では、@で始まるJSONキーは属性になり、配列は繰り返しの兄弟タグになるため、慎重な往復変換であれば構造が保たれます。
よくある質問
変換後のJSONで@プレフィックスと配列は実際に何を意味しますか?
XML属性は@プレフィックス付きのJSONキーになります(例:`<item id="1">` は `{"@id": "1"}` になります)。同じ親の下で繰り返されるタグは、上書きされるのではなくJSON配列になります——これが `<item>Milk</item><item>Eggs</item>` が `["Milk", "Eggs"]` になる理由です。
このツールはXMLの名前空間、CDATAセクション、コメント、処理命令を理解しますか?
一部のみです。名前空間付きタグは、名前空間URIを解決せず生のプレフィックス(例:`ns:tag`)のまま保持され、CDATAの内容は単なるテキストとして読み込まれ、コメントや処理命令は完全に破棄されます。これは一般的な設定・データファイル向けの実用的なコンバーターであり、XML仕様を完全に実装したものではありません——正しさのために名前空間やDTDに依存するXMLには使わないでください。
XMLをJSONに変換し、再びXMLに戻すと、まったく同じ文書になりますか?
かなり近くはなりますが、バイト単位で同一にはなりません。要素と属性の順序や値は正しく往復しますが、元のコメント、CDATAのラッピング、自己終了タグのスタイル、タグ間の正確な空白は保持されません——出力は意味的に等価であり、差分ゼロのコピーではありません。
このツールを使うとき、私のXMLやJSONはどこかにアップロードされますか?
いいえ。解析にはブラウザ内蔵のDOMParserとJSON.parseを使用し、どちらも完全にあなたの端末上で実行されます。ここに貼り付けたりドロップしたりした内容がサーバーに送信されることはありません。
JSON配列を繰り返しのXMLタグに戻すにはどうすればいいですか?
配列の親オブジェクトに、値がJSON配列であるキーを与えてください——例:`{"item": ["Milk", "Eggs"]}`——JSON → XMLモードに切り替えると、配列の各要素につき1つの`<item>`要素が生成されます。JSONの最上位が配列であるか複数のキーを持つ場合は、「ルート要素名」フィールドを使用してください。XMLには単一のルートタグが必要だからです。