XML をフォーマット・整形する方法
圧縮された XML を、適切なネストを持つ読みやすいインデント付き形式に変換します。
问题
XML が圧縮されていたりインデントが不統一だったりして、読みにくくデバッグしづらい。
前提条件
- XML 構造の理解
- ツリー構造のマークアップへの習熟
ステップ
-
1. Validate the XML
Before formatting, ensure the XML is well-formed: all tags are closed, attributes are quoted, and there is a single root element. Malformed XML cannot be reliably formatted.
入力<root><item>text</item></root>输出well-formed -
2. Apply indentation and line breaks
Add a newline after each element and indent child elements relative to their parent. Use a consistent indent size (2 or 4 spaces). Self-closing tags and text content should be handled appropriately.
入力<root><item>text</item></root>输出<root>\n <item>text</item>\n</root> -
3. Preserve significant whitespace
XML has both significant and insignificant whitespace. Elements with xml:space="preserve" or mixed content must keep their whitespace. A good formatter respects these rules and does not alter significant whitespace.
入力formatted XML输出readable, whitespace preserved
期待される結果
整形式で一貫したインデントを備えた、読みやすく編集しやすい XML ドキュメント。
よくあるエラー
- Formatting breaks mixed content
- Mixed content (text interspersed with elements, as in XHTML) has significant whitespace. Use a formatter that preserves mixed content whitespace.
- Output is not well-formed
- The input XML had errors. Fix the source XML before formatting.
トラブルシューティング指引
- If the formatter changes the meaning of the document, check whether it normalized whitespace in a preserve context.
- Use an XML validator first if the formatter fails.
セキュリティ上の制限
- Formatting does not execute XML. However, parsing XML with DTD enabled can trigger XXE attacks. Use a safe parser.