Převodník JSON ↔ XML
Čekání na data
Zadejte data výše a okamžitě uvidíte výsledek analýzy.
Převodník JSON ↔ XML
Převodník JSON ↔ XML je profesionální nástroj pro vývojáře, datové analytiky a IT specialisty, kteří potřebují rychle a bezpečně převádět data mezi dvěma rozšířenými formáty. Ať už řešíte odpovědi REST API, integrace se staršími systémy, konfigurační soubory nebo migrace dat, tento převodník nabízí spolehlivý a přehledný způsob transformace.
Proč používat převodník JSON ↔ XML?
JSON (JavaScript Object Notation) a XML (eXtensible Markup Language) patří mezi základní formáty datové výměny, ale typicky slouží odlišným ekosystémům. JSON dominuje moderním webovým a mobilním aplikacím díky stručné syntaxi a jednoduchému parsování. XML je stále zásadní v podnikových integracích, SOAP službách, dokumentových formátech (např. SVG, XHTML) a v systémech s validací přes XSD nebo DTD.
Kde se jednotlivé formáty nejčastěji používají
| Formát | Typické použití |
|---|---|
| JSON | REST API, mobilní aplikace, NoSQL databáze, moderní webové aplikace |
| XML | SOAP služby, podnikové integrace (SAP, ERP), SVG, XHTML, zdroje Androidu, RSS/Atom feedy |
Převodník propojuje oba světy. Zvládá vnořené objekty i pole, zachovává textový obsah a generuje čitelný výstup v obou směrech.
Klíčové funkce
- Obousměrný převod: JSON → XML i XML → JSON jedním přepínačem.
- Podpora vnořených struktur: Správná konverze hluboce zanořených objektů a polí.
- Automatické rozpoznání polí: Opakující se sourozenecké XML elementy se stejným tagem se převádějí na JSON pole.
- Přehledné formátování: Výstupy mají konzistentní odsazení pro snadné čtení.
- Bezpečné parsování: Převod využívá standardní knihovny bez spouštění vloženého kódu.
JSON vs XML v kostce
| Vlastnost | JSON | XML |
|---|---|---|
| Čitelnost pro člověka | Dobrá | Střední |
| Verbóznost | Kompaktní | Rozsáhlejší (otevírací + zavírací tagy) |
| Datové typy | Nativní (number, boolean, null) |
Vše je text |
| Pole | Nativní ([]) |
Opakované elementy |
| Komentáře | Nepodporuje | Podporuje (<!-- -->) |
| Schémata | JSON Schema | XSD, DTD, RelaxNG |
| Atributy | Není relevantní | Podporované (tento nástroj je nepřevádí) |
Jak převod funguje
JSON → XML: Každý klíč JSON objektu se mapuje na XML tag. Pole se zapisují jako opakované potomky <item> pod nadřazeným elementem. Celý výstup je zabalen do <root> a obsahuje standardní XML deklaraci <?xml version="1.0" encoding="UTF-8"?>.
XML → JSON: Kořenový element se „odbalí“ a jeho potomci tvoří klíče objektu nejvyšší úrovně. Opakované elementy se stejným názvem se sloučí do pole. Protože XML nemá nativní typový systém, výstupní hodnoty JSON jsou reprezentovány jako řetězce.
Příklad převodu
Vstupní JSON:
{
"projekt": "Calculyo",
"meta": {
"verze": "2",
"aktivni": "true"
},
"tagy": ["web", "nastroje"]
}
Výsledné XML:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<projekt>Calculyo</projekt>
<meta>
<verze>2</verze>
<aktivni>true</aktivni>
</meta>
<tagy>
<item>web</item>
<item>nastroje</item>
</tagy>
</root>
live_help Často kladené otázky (FAQ)
Jaký je hlavní rozdíl mezi JSON a XML?
JSON je lehký datový formát založený na párech klíč–hodnota, polích a vnořených objektech. XML je značkovací jazyk, který strukturuje data pomocí otevíracích a zavíracích tagů. JSON bývá stručnější a pohodlnější pro moderní API, XML je silné v enterprise integracích a schématové validaci.
Jak se JSON pole převádí do XML?
Pole JSON se při převodu zapisují jako opakované elementy <item> uvnitř nadřazeného tagu. Při opačném směru (XML → JSON) se opakující se sourozenecké elementy se stejným názvem sloučí do JSON pole.
Proč se při převodu XML → JSON z čísel a booleanů stávají řetězce?
XML nemá nativní systém datových typů. Obsah elementů je text, takže převodník nemůže vždy bezpečně určit, zda má být hodnota číslo, boolean nebo text. Proto se výstup standardně vrací jako řetězce.
Co se děje s kořenovým XML elementem při převodu na JSON?
Kořenový element se odbalí a jeho potomci se použijí jako klíče objektu nejvyšší úrovně. Například <root><name>Jan</name></root> se převede na {"name":"Jan"}.
Převádí nástroj i XML atributy?
Ne. Atributy XML (např. <user id="42">Jan</user>) se v aktuální verzi nepřenášejí do JSON výstupu. Převádí se textový obsah elementů a jejich potomci.
Kdy zvolit JSON a kdy XML?
JSON je vhodný pro moderní webové aplikace, REST API a prostředí orientovaná na JavaScript. XML se hodí pro podnikové systémy, SOAP služby, schématově validované dokumenty a integrace se staršími systémy.
Proč se zobrazuje „XML Error“?
XML je striktní na syntaxi: každý tag musí být správně uzavřen, atributy musí mít uvozovky a dokument musí mít jediný kořenový element. Časté chyby jsou neuzavřené tagy nebo neescapované znaky & a <.