XMLを整形する方法
- XMLを貼り付けるか、
.xmlファイルをエディタにドロップ、またはURLから読み込みます。 - 整形をクリック(またはCtrl+Enterを押す)し、インデントを選びます。圧縮を使うと要素間の空白が削除されます。
- XMLが整形式でない場合は、エラー欄に行・列と原因が表示され、該当行がハイライトされます。修正したら、結果をコピーまたはダウンロードします。
XML整形ツールでできること
- 整形(Pretty Print):各要素を1行ずつに分け、スペース2つ・4つまたはタブでインデントします。
- データはそのまま:テキスト、属性値、
&や などのエンティティは元のとおりに出力され、変わるのは要素間の空白だけです。 - 混在コンテンツに配慮:
<p>Hello <b>world</b></p>のようにテキストとマークアップが混在する要素や、xml:space="preserve"が指定された要素には手を加えません。 - その他もすべて保持:XML宣言、DOCTYPE、コメント、CDATAセクション、処理命令はそのまま残ります。
- オプション:空要素の
<a/>への短縮、コメントの削除、文書全体の圧縮ができます。 - 統計情報:サイズ、要素数と属性数、ネストの深さを表示します。
XML構文エラーのよくある原因と直し方
| 問題 | 例 | 修正方法 |
|---|---|---|
| タグの順序が間違っている | <b><i>text</b></i> | 内側の要素から先に閉じる:</i></b> |
| エスケープされていない「&」 | AT&T | AT&Tと記述する |
| エスケープされていない「<」 | a < b | a < bと記述するか、CDATAを使う |
| 属性値に引用符がない | <item id=7> | <item id="7"> |
| ルート要素が2つある | <a/><b/> | 1つの親要素で囲む |
| HTMLエンティティ | 、© |  、©を使うか、DTDで宣言する |
コマンドラインやコードでXMLを整形する方法
- LinuxとmacOS:
xmllint --format file.xml - Python:
xml.dom.minidom.parseString(text).toprettyxml(indent=" ") - C#:
XDocument.Parse(text).ToString() - Java:
OutputKeys.INDENTをyesに設定したXSLT恒等変換 - VS Code:XML拡張機能をインストールし、ドキュメントのフォーマット(Format Document)コマンドを実行
Online XML Formatterが選ばれる理由
- 無料すべてのツールを無料でご利用いただけます。利用制限やアカウント登録は不要で、透かしも入りません。
- プライバシー保護処理はすべてお使いのブラウザ内で行われます。ファイルがアップロードされることはありません。
- 高速軽量なページなので、どのデバイスでもすぐに表示されます。
- どこでも使えるWindows、macOS、Linux、Android、iPhoneでご利用いただけます。
よくある質問
XMLはサーバーにアップロードされますか?
いいえ。整形と検証はブラウザ内で実行されます。URLから読み込みを使う場合のみ、ブラウザが他サイトからの直接ダウンロードをほとんどブロックするため、当サイトのサーバーを経由してファイルを取得します。内容はそのままお客様に渡され、保存されることはありません。
整形するとデータは変わりますか?
いいえ。変わるのは要素間の空白だけです。テキスト、属性値、エンティティ、CDATAセクション、コメントは記述したまま保持され、混在コンテンツを含む要素には手を加えません。
整形式のXMLと妥当なXMLの違いは何ですか?
整形式(well-formed)のXMLとは、ルート要素が1つだけ、タグが正しく入れ子になって閉じられている、属性値が引用符で囲まれている、特殊文字がエスケープされている、といった構文規則を満たすXMLです。妥当な(valid)XMLは、さらにスキーマ(XSD)やDTDにも適合しています。このツールは整形式かどうかをチェックします。
サイズの大きいXMLファイルも整形できますか?
はい。20,000件のレコードを含む2.6 MBのファイルでも、1秒もかからずに解析・整形できます。エディタは表示中の行の行番号だけを描画するため、動作も軽快です。