Что такое Конвертер XML в JSON?

XML to JSON Converter мгновенно преобразует XML-документы в структурированный JSON. Поддерживает атрибуты, вложенные элементы, текстовые узлы, секции CDATA и пространства имён. Полезен при миграции XML API на JSON-системы или работе с XML-данными в JavaScript.

Конвертер использует fast-xml-parser под капотом, поэтому корректно обрабатывает реальный XML: пространства имён, CDATA-блоки, смешанное содержимое и произвольно глубокую вложенность. Атрибуты получают префикс @_ в выходе, повторяющиеся элементы автоматически сворачиваются в массив, а вы можете включить компактный режим в одну строку или отступ в 2 или 4 пробела.

Как использовать

  1. Шаг 1 — Вставьте XML-содержимое или загрузите XML-файл. Конвертер проверяет структуру и сразу показывает ошибки парсинга.
  2. Шаг 2 — Настройте параметры конвертации: сохранять ли атрибуты (как @attr), сворачивать ли элементы, содержащие только текст, сохранять ли массивы для повторяющихся элементов.
  3. Шаг 3 — Скопируйте отформатированный JSON или скачайте его как .json-файл.

Когда использовать

  • Перевод старого SOAP или RSS-фида на современный JS-фронтенд, который ждёт JSON.
  • Загрузка XML-данных опросов или результатов тестов в NoSQL-базу, хранящую JSON-документы.
  • Извлечение конфигурации из XML-экспорта вендора и переписывание её под YAML или JSON конвейер.

Результат

Вы получаете ответ SOAP API в XML с вложенными элементами продуктов и атрибутами. Вставьте его, чтобы получить чистый JSON, где <product id="123"><name>Widget</name></product> превращается в {"product":{"@id":"123","name":"Widget"}} — готовый для вашего фронтенд-кода.

Частые вопросы

Как представлены XML-атрибуты в JSON-выводе?
Атрибуты получают префикс @_, чтобы отличаться от дочерних элементов. Так <book id="42"><title>Hi</title></book> становится {"book":{"@_id":"42","title":"Hi"}}. Выключите Keep Attributes, чтобы убрать их, если коду нужно только содержимое элементов.
Что происходит, когда XML-элемент повторяется, например несколько <item>?
Повторяющиеся элементы автоматически сворачиваются в JSON-массив. Первое вхождение создаёт массив, последующие соседние добавляются в него, а одиночные элементы остаются обычными объектами. Так привыкли получать преобразованные ленты большинство потребителей JSON.
Обрабатывает ли он CDATA, пространства имён и комментарии?
Содержимое CDATA сохраняется как есть под ключом #cdata. Пространства имён остаются частью имени элемента (xmlns:prefix не теряется). XML-комментарии отбрасываются, в JSON нет аналогичного синтаксиса.
Почему числа выходят строками, а не числами?
По умолчанию конвертер приводит числовой текст к числу, а true/false — к булеву типу, поэтому 42 становится 42, а не "42". Выключите «Парсить числа и булевы значения» в Настройках, если потребляющая API ждёт все значения строками или если ведущие нули и ID-поля должны оставаться нетронутыми.
XML какого размера потянет конвертер?
Он целиком работает на вашем устройстве, поэтому практический потолок — ваша оперативка, обычно десятки мегабайт на документ. Очень большие фиды (гигабайты) требуют потокового парсера, но для обычных API-нагрузок, экспортов и конфигов вы предела не достигнете.

Похожие инструменты