XML 格式化工具
来自 SOAP 服务、RSS 订阅源和配置导出的压缩 XML,挤在一行里根本没法看。这个格式化工具会解析文档,用一致的缩进(2 或 4 个空格、制表符,或不缩进以输出压缩结果)重新构建,保留属性顺序和 CDATA 区段,并把任何格式良好性问题连同精确的行号和列号一起报告出来,让你不用大海捞针就能修好不匹配的标签。
如何格式化 XML
-
1
粘贴 XML
任意长度、任意编码;声明会被保留。
-
2
选择缩进
空格(2 或 4 个)、制表符,或压缩。
-
3
格式化
解析器先构建 DOM,再以一致的间距重新序列化。
-
4
复制结果
输出是格式良好的 XML,可直接粘贴到日志或文档中。
格式化时会保留哪些内容
- XML 声明(
<?xml version="1.0" encoding="UTF-8"?>)原样保留。 - DOCTYPE 声明 及内部子集会被保留。
- 处理指令(
<?xml-stylesheet ?>)单独占一行。 - 注释 根据上下文放在单独一行或同一行内。
- CDATA 区段 连同其中的空白完全原样保留。
- 属性值 在不含双引号时用双引号重新加引号,否则用单引号。
- 实体引用 如
&、<、>保持原样,除非你启用完整实体展开。
缩进示例
输入(压缩后):
<books><book id="1"><title>1984</title><author>George Orwell</author></book></books>
格式化后(2 个空格):
<books>
<book id="1">
<title>1984</title>
<author>George Orwell</author>
</book>
</books>
工具能捕获的常见错误
| 错误 | 修复 |
|---|---|
| 结束标签不匹配 | 让开始标签和结束标签的名称一致 |
| 元素未闭合 | 补上结束标签 |
| 标签名中有非法字符 | 标签名必须以字母或下划线开头 |
| 同一元素上有重复属性 | 删除重复项 |
| CDATA 格式错误 | 检查 <![CDATA[ 和 ]]> 是否配对 |
文本中未转义的 < 或 & |
改用 < 或 & |
格式良好 vs 有效
- 格式良好 的 XML 遵循语法规则:标签平衡、字符合法、嵌套正确。格式化工具会检查这一点。
- 有效 的 XML 还要符合某个模式(DTD 或 XSD)。要做这种检查,请使用 XSD 校验工具。
一份 XML 文档可以格式良好却无效,但反过来不行。
实用说明
- XML 属性顺序对某些系统有意义(现代系统大多无所谓),格式化工具会保留输入的顺序。
- 自闭合标签 vs 显式空标签:在 XML 中
<foo/>和<foo></foo>等价;除非你选择不这样做,否则格式化工具会对空元素使用自闭合形式。 - 命名空间前缀会被完全保留。
常见问题
会。混合内容元素和 CDATA 区段里的文本保持原样;只有元素之间的空白会为缩进而调整。
浏览器中的实际上限约为 50 MB。超过这个量,DOM 解析会消耗过多内存。对于超大文件,请在命令行使用 xmllint 之类的流式格式化工具。
正确。命名空间声明会保留在其所在元素上;除非你启用「合并命名空间」,否则格式化工具不会把它们重新挪到根元素。
不会。解析和格式化都在你的浏览器中完成,不会传输任何内容。
相关工具
ASCII 表参考
完整 ASCII 表,覆盖 0 到 127;列出每个代码的十进制、十六进制、八进制、二进制值和 HTML 数字字符引用写法,包括 NUL、LF、DEL。
HTML 字符参考
可搜索的 HTML 实体列表,含命名代码与数值代码,并支持一键复制特殊字符和符号。
键盘快捷键参考
搜索 macOS、Windows 和 Linux 上 VS Code、Chrome 以及使用 GNU Readline 的 Bash 的文档默认快捷键。
Markdown 图片生成器
生成带替代文本、title 属性和可选链接的 Markdown 图片语法。支持内联格式和引用格式输出。
IBAN 验证工具
在本地检查 IBAN 的注册国家长度、国内结构和 MOD 97-10 校验位。不上传数据,也不表示账户真实存在。
Luhn 算法校验工具
验证信用卡号、IMEI、SIN及其他受Luhn校验保护的号码。返回验证结果(通过或失败),并显示每个校验步骤及校验和计算过程。
此工具还提供其他语言版本
- XML 포매터 [KO]
- XML-formaterare [SV]
- XML-formatter [NL]
- Formater XML [PL]
- XML-Formatter [DE]
- รูปแบบ XML [TH]
- Formateador XML [ES]
- XML Formatter [ID]
- مُنسّق XML [AR]
- Formateur XML [FR]
- XMLフォーマッター [JA]
- Formatador XML [PT]
- Định dạng XML [VI]
- XML Formatter [EN]
- Formatter XML [IT]
- Форматтер XML [RU]
- XML Biçimlendirici [TR]