Перевести JSON в XML
Текст обрабатывается в браузере и не отправляется на сервер.
Переводит JSON в XML: ключи становятся тегами, элементы массива — повторяющимися тегами, ключи с @ — атрибутами. Ключи, которые не годятся в имя тега, переименовываются, и об этом сказано под результатом.
Вставьте данные или откройте файл: дерево и перевод в другие форматы появятся здесь.
Дальше обычно делают
Зачем переводить JSON в XML
XML — формат данных из тегов в угловых скобках, похожий на HTML. Его требуют многие системы: обмен с 1С и другими учётными программами, электронные документы, банковские и государственные сервисы, интеграции на SOAP. JSON короче и проще, и данные сайтов и современных сервисов обычно хранятся в нём.
Перевод нужен, когда данные есть в JSON, а принимающая сторона ждёт XML: загрузить список товаров, подготовить тестовый запрос к SOAP-сервису, показать подрядчику, как будет выглядеть файл. У каждой системы своя схема XML: имена тегов, их порядок, что записано атрибутом, а что вложенным тегом. Перевод строит теги по именам ключей, поэтому ключи и вложенность JSON стоит заранее привести к нужной схеме, а результат сверить с образцом файла, который система уже принимает.
Как пользоваться
Вставьте JSON в поле слева или откройте файл .json.
Справа выберите вкладку XML: перевод появится сразу.
Скопируйте или скачайте XML. Если какие-то ключи пришлось переименовать, это написано под результатом.
Пример
{"order": {"@id": "7", "item": [{"@sku": "A-100", "#text": "Бумага"}, {"@sku": "B-205", "#text": "Картридж"}], "paid": false}}<?xml version="1.0" encoding="UTF-8"?> <order id="7"> <item sku="A-100">Бумага</item> <item sku="B-205">Картридж</item> <paid>false</paid> </order>
Вопросы и ответы
Как получить атрибуты, а не вложенные теги?
Назовите ключ с @: "@id": "7" станет атрибутом id="7". Текст элемента рядом с атрибутами — ключ #text. Это то же правило, по которому XML переводится в JSON, поэтому перевод туда и обратно сохраняет атрибуты.
Как переводятся массивы?
Каждый элемент массива становится тегом с именем ключа: "item": [...] — несколько <item> подряд. Если массив лежит в самом корне, теги называются <item> и обёрнуты в <root>.
Что, если ключ не годится в имя тега?
Имя тега не может начинаться с цифры или содержать пробел, поэтому такие ключи переименовываются: first name — first_name, 1st — _1st. Под результатом перечислено, какие ключи изменены.
Можно ли сжать готовый XML в строку?
Перевод выводится с отступами. Чтобы сжать его, нажмите «Перенести влево» и «Сжать».
Задача сложнее инструмента
Архитектуру и интеграции с API можно обсудить на консультации: выберите время, и вы получите письменный итог с конкретными шагами.
Записаться на консультацию