DevToolPal
RU

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

Конвертация JSON в корректный XML с отступами: массивы — повторяющиеся элементы, ключи с «@» — атрибуты.

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

Параметры

Ввод

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

Результат

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

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

Этот инструмент конвертирует данные JSON в XML. Объекты становятся элементами, массивы — повторяющимися элементами, строки, числа и логические значения — текстом, а null — пустым элементом. Ключи, начинающиеся с @, превращаются в атрибуты, а ключ #text задаёт текст элемента — это зеркально повторяет формат конвертера XML в JSON, так что данные можно гонять туда и обратно.

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

  1. Вставьте JSON в поле Ввод, загрузите файл .json или нажмите Пример.
  2. XML появляется справа по мере ввода. Для некорректного JSON сообщается позиция ошибки.
  3. Выберите стиль Отступа, задайте Имя корневого элемента, измените Префикс ключей-атрибутов и решите, добавлять ли объявление <?xml ?>.
  4. Скопируйте XML или скачайте его как файл .xml.

Пример

{ "book": { "@id": "bk101", "title": "XML Guide", "tags": ["xml", "json"], "price": 44.95 } }

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

<?xml version="1.0" encoding="UTF-8"?>
<book id="bk101">
  <title>XML Guide</title>
  <tags>xml</tags>
  <tags>json</tags>
  <price>44.95</price>
</book>

Примечания

Специальные символы экранируются (&, <, > в тексте и дополнительно " в атрибутах), поэтому результат загрузит любой XML-парсер. В JSON нельзя выразить пространства имён, комментарии или CDATA, поэтому они не создаются.

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

› Как создать XML-атрибуты из JSON?

Начните ключ с "@". {"book": {"@id": "bk101", "title": "Guide"}} превращается в <book id="bk101"><title>Guide</title></book>. Префикс можно изменить или очистить, чтобы каждый ключ стал элементом.

› Как конвертируются JSON-массивы?

Массив повторяет родительский элемент для каждого элемента массива, поэтому {"tag": ["a", "b"]} превращается в <tag>a</tag><tag>b</tag>. Массив верхнего уровня или массив прямо внутри другого массива использует элементы <item>.

› Что происходит с ключами, которые не являются допустимыми XML-именами?

Пробелы и символы заменяются подчёркиваниями, а к именам, начинающимся с цифры или с "xml", добавляется ведущее подчёркивание, поэтому результат всегда корректно сформирован.

› Откуда берётся корневой элемент?

Если у JSON-объекта ровно один ключ, этот ключ становится корнем. Иначе всё оборачивается в элемент с именем корня из параметров — по умолчанию "root".