Безплатен конвертор

XML към JSON конвертор

Преобразувайте незабавно XML данни или файлове във формат JSON във вашия браузър. Поддържа персонализиран отстъп и обработва вложени структури.

Изберете XML файл

или плъзнете и пуснете тук

или

За този инструмент

XML и JSON са формати за обмен на данни, но идват от различни епохи на мрежата. XML, стандартизиран през 1998 г., е проектиран като самоописващ се маркиращ формат с атрибути, пространства от имена и валидиране на схема. JSON се появи в началото на 2000-те години като по-лек формат, по-подходящ за изпълнение на JavaScript и модерни API. Повечето нови уеб API говорят JSON; много по-стари системи — SOAP услуги, RSS канали, конфигурационни файлове, корпоративни интеграции — все още произвеждат XML. Конвертирането между тях е една от най-често срещаните задачи за взаимодействие в съвременното развитие.

Преобразуването не е идеално без загуби, защото двата формата имат различна изразителна сила. XML има атрибути (които JSON няма изначално), прави разлика между текстово съдържание и имена на елементи и поддържа смесено съдържание (елементи, съдържащи както текст, така и дъщерни елементи). Опростеният модел обект/масив на JSON не може директно да представи тези характеристики, така че конверторите прилагат конвенции: атрибутите стават ключове с префикс @, текстовото съдържание става ключ #text и т.н.

Този конвертор анализира XML с помощта на вградения в браузъра DOMParser и обхожда полученото DOM дърво, за да произведе JSON. Елементите със същото име на етикет като братя и сестри се събират в масиви; атрибутите влизат в специални ключове; пространствата от имена и инструкциите за обработка се запазват, когато присъстват. Резултатът е четим от човека JSON, който се връща разумно обратно към XML.

Защо да конвертирате XML в JSON

Повечето модерни кодове на приложения са по-удобни с JSON. JavaScript анализира JSON естествено, json модулът на Python е в стандартната библиотека и почти всеки друг език има еквивалентна първокласна JSON поддръжка. XML обработката изисква импортиране на допълнителни библиотеки и писане на повече шаблони. Преобразуването на входящ XML в JSON преди обработка често е най-бързият път от външен XML канал към вътрешна структура на данните.

Инструментите също се основават на JSON. JSON разкрасители, валидатори, валидатори на схеми, езици за заявки (jq, JSONPath) и зрители са в изобилие; XML еквивалентите са по-малко и често по-стари. Работата в JSON отключва по-богата екосистема от инструменти.

Как да използвате

Поставете XML, вземете JSON.

  1. Поставете или качете своя XML: Поставете XML текст в полето за въвеждане или пуснете файл. XML трябва да е добре оформен; неправилно формираният XML създава грешка при анализ, а не предположение.
  2. Преобразуване: DOMParser изгражда DOM, конверторът обхожда всеки елемент и JSON се генерира с помощта на ключове за атрибути (@attr) и ключове за текстово съдържание (#text), където е необходимо. Родствените елементи със същото име стават масиви.
  3. Прегледайте структурата: Проверете JSON, за да потвърдите, че атрибутите, текстът и влагането са картографирани според очакванията. Използваните конвенции (напр. @ за атрибути) се виждат в изхода.
  4. Изтеглете или копирайте: Запазете като .json или копирайте в клипборда.

Обичайни случаи на употреба

Технически подробности

DOMParser създава XML DOM, идентичен с това, което браузърът използва за XHTML страници. Конверторът обхожда този DOM рекурсивно. За всеки елемент той създава JSON обект: атрибутите стават ключове с префикс @ (напр. @id, @class); дъщерните елементи на елемента се рекурсират в същата структура; текстовото съдържание, когато присъства заедно с децата, живее под ключ #text.

Повтарящите се дъщерни елементи с едно и също име на етикет се събират в JSON масив. Едно дете на дадено име се появява като стойност на обект; множество деца се появяват като масив от обекти. Тази конвенция работи добре на практика, но означава, че формата на JSON зависи от това дали елементите се появяват веднъж или няколко пъти – известно несъвършенство на съпоставянето на XML към JSON.

Пространствата от имена се запазват като част от имената на елементи (префикс:localName). Инструкциите за обработка и CDATA секциите се преобразуват в текстово съдържание. XML декларациите и DOCTYPE се премахват от JSON изхода, но не засягат данните.

Най-добри практики

Често задавани въпроси

Преобразуването на XML в JSON променя ли съдържанието?
Съдържанието е запазено възможно най-точно. Някои специфични за формата функции обаче може да нямат директни еквиваленти, така че могат да възникнат малки разлики във форматирането.
Защо да конвертирате данни във формат JSON?
JSON е стандартният формат за данни за уеб API и JavaScript приложения. Той е четим от хора, широко се поддържа от езици за програмиране и има по-прост синтаксис от XML.
Конверторът обработва ли вложени или сложни XML структури?
да Инструментът анализира правилно вложени обекти, масиви и всички стандартни XML типове данни, като запазва пълната структура на данните в JSON изхода.
Сигурно и поверително ли е това преобразуване?
да Цялата обработка се извършва локално във вашия браузър. Вашите данни никога не напускат вашето устройство — без качване на сървър, без обработка в облак, без събиране на данни.
Обработват ли се секциите CDATA?
да Съдържанието на CDATA се преобразува в обикновен текст в JSON изхода. Самото обвиване на CDATA не се запазва, но съдържанието е.
Данните ми качват ли се на сървър?
Не. DOMParser работи във вашия браузър; преобразуването се извършва изцяло на вашето устройство.
JSON ще се върне ли обратно към XML?
Да, ако използвате обратната конвенция (инструментът от JSON към XML следва същите правила за @attr и #text). Двупосочното пътуване запазва структурата за типичен XML; някои крайни случаи (ред със смесено съдържание, инструкции за обработка) може да не оцелеят перфектно.
Какъв е максималният входен размер?
До 50 MB. DOMParser е ограничен от паметта от вашия браузър; много големи XML файлове може да забавят или да не успеят да анализират.