Конвертер JSON в XML
Передайте данные JSON программе, которая понимает только XML. Каждая запись превращается в элемент, каждый ключ — в дочерний тег, а весь документ помещается в один корневой элемент, имя которого вы выбираете сами.
Конвертер данных
или перетащите сюда файлы CSV, TSV, TXT … ·
Макс. 95 MB на файл· До 20 файлов· Удаляются через 30 минут
Файлы обрабатываются на наших серверах и удаляются через 30 минут.
Символ, разделяющий столбцы в CSV и текстовых файлах, — при чтении и при записи. «Автоопределение» распознаёт его во входном файле, а при записи ставит запятые.
UTF-8 подходит для любого языка. Выберите «UTF-8 с BOM», если Excel в Windows искажает при открытии CSV буквы с диакритикой, кириллицу или азиатские символы.
Для файлов Excel, ODS и Numbers: преобразовать только первый лист или все листы (по одному CSV на лист в ZIP или по одному ключу JSON на лист).
Название вкладки листа в новой таблице, до 31 символа.
«Массив объектов» использует имена столбцов как ключи в каждой строке; «Массив массивов» компактнее и хранит заголовок первым массивом.
Имя внешнего элемента, который содержит все строки; каждая строка становится элементом <row> внутри него.
Используется в операторах CREATE TABLE и INSERT. Только латинские буквы, цифры и подчёркивания.
Кавычки и типы столбцов немного различаются в разных СУБД; выберите ту, в которую будете импортировать.
Приводит ячейки с датами к одному формату. ISO (2026-10-18) надёжнее всего для баз данных и кода; «Оставить как есть» сохраняет даты в исходном виде.
Как пользоваться инструментом
- 1
Загрузите JSON
Добавьте файл .json, например ответ API, или файл JSON Lines. До 20 файлов, каждый до 95 MB.
- 2
Задайте имя корневого элемента
В разделе Расширенные настройки введите внешний тег в поле Корневой тег XML (по умолчанию rows) и оставьте включенным Форматирование с отступами, чтобы результат был с отступами.
- 3
Конвертируйте и сопоставьте поля
Нажмите Конвертировать в XML → и скачайте результат. Переименуйте теги, если схема принимающей системы ожидает другие имена.
Зачем конвертировать JSON в XML, если большинство API перешли на JSON
JSON победил в веб-API; его актуальная спецификация, RFC 8259 2017 года, умещается на нескольких страницах. XML старше: он рекомендация W3C с февраля 1998 года и никуда не ушел оттуда, где контракты строгие: банки, электронные счета, издательское дело и государственная отчетность.
Поэтому направление этой конвертации обычно диктуют деньги или регулирование. Разработчик получает заказы из JSON API и должен отправить их в SOAP-сервис партнера. Магазин хранит товары в JSON, а сайту сравнения цен нужен XML-фид. Команда хранит переводы в JSON, а сборка Android ожидает strings.xml. Если нужна таблица, JSON в CSV даст строки вместо элементов.
Системы, которые до сих пор принимают только XML
| Организация | Требование | Источник |
|---|---|---|
| Веб-сервисы SOAP | Каждый запрос передается как XML-конверт; SOAP 1.2 стал рекомендацией W3C в 2003 году | — |
| Google Merchant Center | Товарные фиды принимаются в XML в формате RSS 2.0 или Atom 1.0, а также в виде текста с разделителями | — |
| Электронные счета Peppol | Счета передаются как XML-документы UBL 2.1 по правилам Peppol BIS Billing 3.0 | — |
| Приложения Android | Текстовые ресурсы и переводы хранятся в res/values/strings.xml | — |
Пример JSON в XML: два товара
<?xml version="1.0" encoding="UTF-8"?>
<rows>
<row>
<sku>A-17</sku>
<price>12.5</price>
<tags>новинка</tags>
<tags>скидка</tags>
</row>
<row>
<sku>B-02</sku>
<price>8</price>
</row>
</rows>МифJSON и XML соответствуют друг другу один к одному, поэтому конвертация точная.
ФактВ XML есть атрибуты, смешанное содержимое и пространства имен, которых нет в JSON, а в JSON есть типы, которых нет в XML. Конвертер должен выбрать одно соответствие; здесь везде используются дочерние элементы.
МифЧисло 12.5 остается числом и в XML.
ФактXML хранит символы. 12.5 остается текстом, пока схема или читающая программа не определит его как десятичное число.
Что меняется при переводе JSON в XML
Стоит проверить три вещи. Типы превращаются в текст, поэтому true, null и 0 приходят как символы; null обычно становится пустым элементом. Ключи, не являющиеся допустимыми именами XML, нужно переименовать: тег не может начинаться с цифры или содержать пробел. И результат получается больше, потому что каждое значение обернуто в открывающий и закрывающий теги, повторяющие ключ.
Больше ничего не теряется. Вложенность сохраняется как вложенные элементы, порядок записей остается прежним, а текст Unicode не искажается, потому что файл записывается в UTF-8. Другие варианты для структурированных данных, от YAML до SQL, перечислены на странице конвертера данных.
Факты о форматах JSON и XML
JSON
Формат JSON (JavaScript Object Notation)
JSON — лёгкий текстовый формат для структурированных данных, который популяризировал Дуглас Крокфорд в начале 2000-х; он стандартизован как RFC 8259 и ECMA-404. Он описывает объекты, массивы, строки, числа, логические значения и null с помощью простого и читаемого синтаксиса. Это формат по умолчанию для веб-API, файлов конфигурации и обмена данными между приложениями практически на любом языке программирования. В нём нет встроенных комментариев, дат и схем, а большие вложенные файлы трудно читать без просмотрщика.
- Сжатие
- –
- Прозрачность
- –
- Анимация
- –
- Год появления
- 2001 · Douglas Crockford
XML
Extensible Markup Language
XML — язык разметки для структурированных данных, опубликованный W3C в 1998 году. Он использует вложенные теги с атрибутами и поддерживает схемы, пространства имён и валидацию, что делает его надёжным для сложных документов. На нём основаны RSS-ленты, SVG, документы Office, карты сайтов и многие корпоративные и государственные системы обмена данными. XML многословнее JSON, но его читает любой язык программирования и многие табличные программы.
- Сжатие
- –
- Прозрачность
- –
- Анимация
- –
- Год появления
- 1998 · W3C
JSON переводят в XML, когда современные данные нужно передать по более старому контракту: в SOAP-сервис, товарный фид, сеть электронных счетов или файл конфигурации, потребитель которого читает элементы, а не фигурные скобки.
Вопросы о конвертере JSON в XML
Зачем XML нужен один корневой элемент, если мой JSON начинается с массива?
Спецификация XML 1.0 требует, чтобы в каждом корректном документе был ровно один элемент, содержащий все остальные. У массива JSON такой обертки нет, поэтому конвертер добавляет ее с именем из поля Корневой тег XML и помещает каждый элемент массива внутрь как <row>.
Что происходит с ключами JSON вроде «2024 total» или «unit price»?
Ни то ни другое не является допустимым именем элемента XML: имя не может начинаться с цифры или содержать пробелы. Переименуйте такие ключи в JSON до конвертации, лучше сразу в точные имена тегов, которые использует принимающая схема, чтобы результат не пришлось править.
Как массив JSON внутри записи записывается в XML?
Как один и тот же элемент, повторенный для каждого значения. Массив tags с тремя строками превращается в три подряд идущих элемента <tags>. Пустой массив не оставляет ничего: это одно из немногих мест, где при конвертации JSON в XML теряется информация.
Пройдет ли XML проверку по XSD-схеме партнера?
Только если структура уже совпадает. Конвертер записывает точную, корректную копию вашего JSON; он не знает, какой порядок элементов, пространства имен или атрибуты требует партнер. Используйте результат как основу и доработайте под схему.
Можно ли конвертировать XML обратно в JSON?
Используйте XML в JSON. При обратном преобразовании возможны небольшие отличия: XML хранит все значения как текст, поэтому число или true из JSON могут вернуться строкой.