DevToolPal
RU

Конвертер XML в JSON

Преобразование XML в JSON прямо в браузере с сохранением атрибутов, текста и повторяющихся элементов и точным указанием ошибок.

Работает локально, без загрузки на сервер

Параметры

Ввод

Символов: 0 · 0 B

Результат

Символов: 0 · 0 B

Что делает инструмент

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

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

  1. Вставьте XML в поле Ввод, загрузите или перетащите файл .xml либо нажмите Пример.
  2. JSON появляется справа по мере ввода.
  3. Настройте параметры:
    • Отступ: 2 или 4 пробела, табуляция или минифицированный вывод.
    • Префикс атрибутов: метка для атрибутов, по умолчанию @. Оставьте поле пустым, чтобы игнорировать атрибуты.
    • Преобразовывать числа и логические значения: превращать текст вроде 42 и true в настоящие числа и логические значения JSON.
    • Всегда использовать массивы: оборачивать каждый дочерний элемент в массив, чтобы структура была предсказуемой.
  4. Скопируйте результат или скачайте его как файл .json.

Пример

<book id="bk101">
  <title lang="en">XML Developer's Guide</title>
  <tag>xml</tag>
  <tag>programming</tag>
</book>

превращается в

{
  "book": {
    "title": { "#text": "XML Developer's Guide", "@lang": "en" },
    "tag": ["xml", "programming"],
    "@id": "bk101"
  }
}

Примечания

XML-объявление (<?xml ...?>) и инструкции обработки в JSON не попадают. Комментарии игнорируются. Пробелы вокруг текста обрезаются.

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

› Как атрибуты XML представлены в JSON?

Как ключи, начинающиеся с префикса атрибутов (по умолчанию "@"). Например, <price currency="USD">44.95</price> становится { "@currency": "USD", "#text": "44.95" }. Очистите поле префикса, чтобы полностью отбросить атрибуты.

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

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

› Преобразуются ли числа?

По умолчанию нет, потому что значения вроде почтовых индексов или ID с ведущими нулями изменились бы. Включите «Преобразовывать числа и логические значения», чтобы получать 42 вместо "42" и true вместо "true".

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

Нет. Разбор выполняется в вашем браузере.