Исходный XML

или перетащите файл сюда либо вставьте код ниже
Исходный XML

Результат: JSON

Результат: JSON

Файлы не покидают браузерКак именно?

Этот конвертер XML в JSON превращает XML в JSON прямо по мере ввода и дает настроить атрибуты, текст, повторяющиеся элементы и пространства имен. Вставьте XML или откройте файл — на сервер ничего не загружается.

Обновлено:

Как это работает

  1. Вставьте или откройте XML

    Перетащите файл .xml или .xml.gz, нажмите «Открыть файл» или «Открыть по ссылке», вставьте разметку или выберите «Загрузить пример».

  2. Настройте структуру JSON

    Выберите префикс атрибутов, ключ для текста, режим «Всегда массивы» и нужно ли превращать числа и true/false в типы JSON.

  3. Скачайте или скопируйте

    JSON обновляется при каждом изменении. Скачайте файл .json, скопируйте его или нажмите «Открыть в JSON Viewer».

Возможности

  • Атрибуты и текстовые узлы

    Атрибуты становятся ключами с выбранным префиксом: @id, @_id, -id или без префикса. Текст рядом с атрибутами или дочерними элементами попадает в ключ #text либо в другой, заданный вами.

  • Предсказуемые массивы

    Повторяющиеся элементы становятся массивами. С опцией «Всегда массивы» массивом становится каждый дочерний элемент, и код не ломается, если элемент встретился один раз.

  • Пространства имен и CDATA

    Префиксы вида ns:item можно оставить или убрать вместе с атрибутами xmlns. Секции CDATA объединяются с текстом или сохраняются в ключе #cdata.

  • Понятные ошибки

    Для некорректного XML указываются строка и столбец, а кнопка «Перейти к ошибке» переносит к нужному месту. Элементы, где текст смешан с дочерними элементами, выводятся в предупреждении: JSON не сохраняет их порядок.

  • Безопасно для чужих файлов

    Собственный XML-парсер никогда не загружает внешние сущности (XXE) и ограничивает их раскрытие, поэтому файлы «billion laughs» сразу отклоняются, а не подвешивают страницу.

  • Обратная конвертация

    Кнопка «JSON → XML» открывает результат в обратном конвертере; простые документы превращаются обратно в тот же XML.

Ограничения и конфиденциальность

Файл может занимать до 100 MB, в том числе после распаковки .xml.gz. Файлы больше 5 MB конвертируются напрямую из файла, без загрузки в редактор, — там показывается только начало.

Проверка по DTD и XSD не выполняется, внешние DTD и сущности никогда не скачиваются. Комментарии и инструкции обработки в JSON не попадают. Подробнее — на странице о конфиденциальности.

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

Как конвертировать XML в JSON онлайн?

Вставьте XML или откройте файл — JSON сразу появится справа. Нажмите «Скачать .JSON», чтобы сохранить его, или «Копировать».

Как атрибуты XML переводятся в JSON?

Каждый атрибут становится ключом с префиксом, по умолчанию @: <book id="1"> превращается в {"book": {"@id": "1"}}. В поле «Атрибуты как» можно выбрать @_, - или «без префикса».

Почему элемент то массив, то объект?

Элемент, который встречается один раз, становится объектом, а повторяющийся — массивом. Включите «Всегда массивы», если коду нужна одинаковая структура для любого документа.

Числа превращаются в числа JSON?

Только если включить «Числа и true/false». По умолчанию все значения остаются строками: в XML нет типов, а у значений вроде 007 пропал бы ведущий ноль.

Можно отформатировать результат?

Да. В поле «Отступ» выберите 2 или 4 пробела, табуляцию или запись в одну строку.

Загружается ли мой XML на сервер?

Нет. Конвертация идет в Web Worker в вашем браузере и после загрузки страницы работает даже без интернета.

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