Форматтер XML
Минифицированные XML-дампы из SOAP-сервисов, RSS-лент и экспортов конфигов нечитаемы в одну строку. Этот форматтер разбирает документ, перестраивает его с единообразными отступами (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[ и ]]> |
Неэкранированные < или & в тексте |
Используйте < или & |
Правильно сформированный против валидного
- Правильно сформированный XML следует синтаксическим правилам: сбалансированные теги, допустимые символы, правильная вложенность. Форматтер это проверяет.
- Валидный XML дополнительно соответствует схеме (DTD или XSD). Для этого используйте валидатор XSD.
XML-документ может быть правильно сформированным, не будучи валидным, но не наоборот.
Практические заметки
- Порядок атрибутов XML значим для некоторых систем (не для многих современных), форматтер сохраняет порядок ввода.
- Самозакрывающиеся против явных пустых тегов:
<foo/>и<foo></foo>эквивалентны в XML; форматтер использует самозакрывающиеся для пустых элементов, если вы не откажетесь. - Префиксы пространств имен сохраняются точно.
Часто задаваемые вопросы
Да. Текст внутри элементов со смешанным содержимым и секций CDATA сохраняется как есть; только пробелы между элементами корректируются для отступов.
Практический предел, около 50 МБ в браузере. За этим разбор DOM потребляет слишком много памяти. Для огромных файлов используйте потоковый форматтер вроде xmllint в командной строке.
Да. Объявления пространств имен сохраняются на своем элементе; форматтер не перетасовывает их к корню, если вы не включите «консолидировать пространства имен».
Нет. Разбор и форматирование происходят в вашем браузере, ничего не передается.
Сопутствующие инструменты
Смешивание цветов
Смешайте два HEX-цвета в 2-20 равномерных образцов. Каждый промежуточный цвет показывается как HEX-код в верхнем регистре, включая оба края.
Счетчик FPS
Измерьте FPS браузера через requestAnimationFrame: сглаживание, минимальная и максимальная частота кадров, порог предупреждения и график по желанию. Работает локально, без загрузок и API.
Генератор случайных букв
Генерируйте случайные буквы A-Z. Выберите количество, верхний или нижний регистр либо смешанный вариант для игр, заданий и уроков.
Генератор бейджей README
Создавайте бейджи shields.io для файлов README на GitHub: статус сборки, версия, лицензия, число загрузок и покрытие кода. Просмотрите и скопируйте фрагмент Markdown.
Генератор случайных адресов
Создавайте 1–20 похожих на адрес записей для макетов и тестов в трёх упрощённых форматах.
Конвертер из формата HEX в ASCII
Преобразует последовательности шестнадцатеричных байтов в текст в формате ASCII. Отлично подходит для отладки протоколов, обратного инженеринга и решений задач типа CTF.
Инструмент доступен на других языках
- Formateador XML [ES]
- Định dạng XML [VI]
- XML 포매터 [KO]
- XML Formatter [ID]
- Formater XML [PL]
- Formateur XML [FR]
- Formatador XML [PT]
- XML-Formatter [DE]
- مُنسّق XML [AR]
- XMLフォーマッター [JA]
- XML-formatter [NL]
- XML-formaterare [SV]
- รูปแบบ XML [TH]
- XML Formatter [EN]
- Formatter XML [IT]
- XML Biçimlendirici [TR]
- XML 格式化工具 [ZH]