Конвертер XML в формат JSON — Numio
Преобразует XML в JSON с помощью xml-js в компактном режиме: атрибуты попадают в _attributes, текст — в _text, а повторяющиеся соседние элементы становятся массивом. Все значения остаются строками.
Посмотреть ответ SOAP, RSS или устаревшего XML API в виде JSON перед написанием кода разбора.
Когда пригодится
- Посмотреть ответ SOAP, RSS или устаревшего XML API в виде JSON перед написанием кода разбора.
- Извлечь значения атрибутов и текста из XML-экспорта, чтобы передать их в инструменты, работающие с JSON.
Как пользоваться
- Вставьте XML в левый редактор или загрузите файл .xml.
- В JSON атрибуты читайте из _attributes, текст элемента — из _text, а повторяющиеся элементы — из массивов.
- Скопируйте JSON и перенесите нужные поля в свою структуру.
Входной XML
<order id="1042"> <customer>Ada Lovelace</customer> <item sku="A-1">Keyboard</item> <item sku="B-7">Mouse</item> </order>
JSON
{
"order": {
"_attributes": {
"id": "1042"
},
"customer": {
"_text": "Ada Lovelace"
},
"item": [
{
"_attributes": {
"sku": "A-1"
},
"_text": "Keyboard"
},
{
"_attributes": {
"sku": "B-7"
},
"_text": "Mouse"
}
]
}
}Подробности и ограничения
Преобразование выполняется в браузере. Настроек нет; компактный формат фиксирован.
Элемент, встречающийся один раз, становится объектом, а дважды — массивом, поэтому форма JSON может меняться в зависимости от данных. Обрабатывайте оба варианта в коде.
XML-декларация, комментарии и CDATA сохраняются как _declaration, _comment и _cdata. Проверка по схеме (XSD) или DTD не выполняется.
Смешанное содержимое (текст вперемешку с тегами) теряет исходный порядок.
FAQ
Преобразуются ли числа и boolean в типы JSON?
Нет. Значения атрибутов и текст остаются строками, например "1042". При необходимости преобразуйте типы в своём коде.
Что будет, если мой XML некорректен?
Вместо JSON страница покажет ошибку "Invalid XML", например "unclosed tag <order>" или "Unexpected close tag (line 3, column 8)". Закрывайте каждый элемент, заключайте значения атрибутов в кавычки и экранируйте & как &.
Можно ли получить JSON без ключей _text и _attributes?
Не на этой странице. Компактный формат сохраняет их, чтобы атрибуты и текст не путались. Измените структуру результата в коде после копирования.