Преобразовать XML в JSON

Работает на вашем устройстве · Ваш файл никогда не покидает устройство.

Перетащите файл .xml или вставьте XML из API, ленты или файла настроек — и получите JSON, с которым удобно работать. Документ читает встроенный XML-разбор браузера, поэтому всё корректно оформленное преобразуется, а в повреждённом файле указывается строка и столбец проблемы.

Соответствие фиксировано и обратимо: каждый элемент становится ключом; соседи с одинаковым именем — массивом; атрибуты сохраняются под ключами, начинающимися с @ (id="3" становится "@id": "3"); а если элемент содержит и текст, и дочерние элементы или атрибуты, текст попадает в "#text". Элемент только с текстом становится самим значением.

При включённом распознавании типов текст вроде 12, true или пустой элемент становятся числом, логическим значением или null; отключите его, чтобы всё осталось текстом. Имена с пространствами имён (soap:Body) сохраняются как написаны. Предпросмотр показывает первые 200 строк до скачивания.

Как Преобразовать XML в JSON

  1. Перетащите файл XML или вставьте XML в поле.
  2. Решите, нужно ли типизировать числа, логические значения и пустые элементы.
  3. Нажмите «Преобразовать в JSON» и просмотрите результат.
  4. Скачайте .json.

Поддерживаемые форматы и ограничения

Вход
XML (.xml) — файл или вставленный текст, UTF-8
Выход
JSON с отступами, UTF-8
Атрибуты
Сохраняются как ключи "@имя"
Повторяющиеся элементы
Становятся массивом
Где работает
В браузере — без загрузки на сервер

Не подходит для: Документов, которые не являются корректным XML (незакрытые теги, HTML-страницы) — разбор сообщает о первой проблеме, а не угадывает.

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

Мои файлы загружаются на сервер?
Нет. Преобразование целиком выполняется в вашем браузере, силами вашего же устройства. Файл не покидает компьютер или телефон — поэтому инструмент работает и без интернета, если страница уже загружена.
Как обрабатываются атрибуты и смешанное содержимое?
Атрибуты становятся ключами с префиксом @, так что <item id="3"> даёт "@id": "3". Если у элемента есть текст вместе с атрибутами или дочерними элементами, текст хранится в "#text"; элемент только с текстом становится этим текстом напрямую.
Почему один элемент — объект, а повторяющиеся — массив?
Элемент, встречающийся у родителя один раз, становится объектом (или значением); два и больше соседей с одним именем — массивом. Это в точности повторяет документ, поэтому список из одного элемента — это один объект; если вашему коду нужен массив в обоих случаях, оберните его на принимающей стороне.
Как выглядит верх JSON?
Один ключ с именем корневого элемента, содержащий всё внутри него — <records>…</records> становится {"records": {...}}. Так сохраняется имя корня, и инструмент «JSON в XML» может собрать тот же документ обратно.

Ещё в разделе Таблицы и данные

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