Prevod JSON do XML
Odovzdajte dáta JSON softvéru, ktorý rozumie len XML. Každý záznam sa zmení na element, každý kľúč na podradený tag a celý dokument je v jednom koreňovom elemente, ktorého názov si zvolíte.
Prevodník dát
alebo sem presuňte súbory CSV, TSV, TXT … ·
Max. 95 MB na súbor· Až 20 súborov· Odstránenie po 30 minútach
Súbory sa spracúvajú na našich serveroch a po 30 minútach sa odstránia.
Znak, ktorý oddeľuje stĺpce v súboroch CSV a textových súboroch, pri čítaní aj zápise. Automaticky ho rozpozná zo vstupu a zapisuje čiarky.
UTF-8 funguje pre všetky jazyky. Vyberte UTF-8 s BOM, ak Excel vo Windowse po otvorení CSV zobrazuje pokazenú diakritiku alebo ázijské znaky.
Vstup z Excelu, ODS a Numbers: previesť len prvý hárok alebo všetky hárky (jeden CSV na hárok v ZIP alebo jeden kľúč JSON na hárok).
Názov karty hárka v novej tabuľke, najviac 31 znakov.
Pole objektov používa názvy stĺpcov ako kľúče pre každý riadok; pole polí je kompaktnejšie a hlavičku ponechá ako prvé pole.
Názov vonkajšieho prvku, ktorý obaľuje všetky riadky; každý riadok sa v ňom stane prvkom <row>.
Používa sa v príkazoch CREATE TABLE a INSERT. Iba písmená, číslice a podčiarkovníky.
Úvodzovky a typy stĺpcov sa medzi databázami mierne líšia; vyberte tú, do ktorej budete importovať.
Prepíše bunky s dátumom do jedného formátu. ISO (2026-10-18) je najbezpečnejší pre databázy a kód; ponechať ich nechá tak, ako sú v zdroji.
Ako používať tento nástroj
- 1
Nahrajte JSON
Pridajte súbor .json, napríklad odpoveď z API, alebo súbor JSON Lines. Najviac 20 súborov, každý do 95 MB.
- 2
Pomenujte koreňový element
V časti Rozšírené nastavenia zadajte vonkajší tag do poľa Koreňový tag XML (predvolene rows) a nechajte zapnuté Prehľadné formátovanie, aby bol výstup odsadený.
- 3
Preveďte a namapujte
Stlačte Previesť na XML a súbor stiahnite. Tagy premenujte tam, kde schéma prijímajúceho systému očakáva iné názvy.
Prečo previesť JSON do XML, keď väčšina API prešla na JSON
JSON zvíťazil v API na webe; jeho aktuálna špecifikácia, RFC 8259 z roku 2017, sa zmestí na niekoľko strán. XML je staršie, odporúčanie W3C od februára 1998, a neopustilo miesta, kde sú zmluvy prísne: bankovníctvo, elektronickú fakturáciu, vydavateľstvo a vládne výkazníctvo.
Smer tohto prevodu preto zvyčajne určujú peniaze alebo regulácia. Vývojár získa objednávky z API vo formáte JSON a musí ich odoslať do služby SOAP partnera. Obchod vedie produkty v JSON, ale porovnávač chce feed v XML. Tím ukladá preklady ako JSON a build pre Android očakáva strings.xml. Ak je cieľom skôr tabuľka, JSON do CSV vám dá riadky namiesto elementov.
Systémy, ktoré stále vyžadujú vstup v XML
| Organizácia | Požiadavka | Zdroj |
|---|---|---|
| Webové služby SOAP | Každá požiadavka putuje ako obálka XML; SOAP 1.2 sa stal odporúčaním W3C v roku 2003 | — |
| Google Merchant Center | Produktové feedy sa akceptujú ako XML vo formáte RSS 2.0 alebo Atom 1.0, ako aj ako text s oddeľovačmi | — |
| Elektronická fakturácia Peppol | Faktúry sa vymieňajú ako dokumenty UBL 2.1 XML podľa pravidiel Peppol BIS Billing 3.0 | — |
| Aplikácie pre Android | Textové zdroje a preklady sú v res/values/strings.xml | — |
Príklad prevodu JSON do XML: dva produkty
<?xml version="1.0" encoding="UTF-8"?>
<rows>
<row>
<sku>A-17</sku>
<price>12.5</price>
<tags>novinka</tags>
<tags>zlava</tags>
</row>
<row>
<sku>B-02</sku>
<price>8</price>
</row>
</rows>MýtusJSON a XML si zodpovedajú jedna k jednej, takže prevod je presný.
FaktXML má atribúty, zmiešaný obsah a menné priestory, ktoré JSON nemá, a JSON má typy, ktoré XML nemá. Konvertor si musí vybrať jedno mapovanie; toto používa všade vnorené elementy.
MýtusČíslo 12.5 zostane v XML číslom.
FaktXML ukladá znaky. 12.5 je text, kým schéma alebo čítajúci program nepovie, že ide o desatinné číslo.
Čo sa zmení, keď sa z JSON stane XML
Skontrolovať treba tri veci. Typy sa zmenia na text, takže true, null aj 0 prídu ako znaky; null sa zvyčajne stane prázdnym elementom. Kľúče, ktoré nie sú platnými názvami XML, treba premenovať, pretože tag nemôže začínať číslicou ani obsahovať medzeru. A výstup je väčší, pretože každá hodnota je obalená otváracím a zatváracím tagom, ktoré opakujú kľúč.
Nič iné sa nestratí. Vnorenie zostane ako vnorené elementy, poradie záznamov sa zachová a text v Unicode zostane nedotknutý, pretože súbor sa zapisuje v UTF-8. Ďalšie možnosti pre štruktúrované dáta, od YAML po SQL, nájdete na stránke konvertora dát.
Fakty o formátoch JSON a XML
JSON
JavaScript Object Notation
JSON je ľahký textový formát pre štruktúrované dáta, ktorý na začiatku 21. storočia spopularizoval Douglas Crockford a ktorý je normalizovaný ako RFC 8259 a ECMA-404. Pomocou jednoduchej, čitateľnej syntaxe vyjadruje objekty, polia, reťazce, čísla, booleovské hodnoty a null. Je predvoleným formátom webových API, konfiguračných súborov a výmeny dát medzi aplikáciami takmer v každom programovacom jazyku. Nemá vstavané komentáre, dátumy ani schémy a veľké vnorené súbory sa bez prehliadača ťažko čítajú.
- Kompresia
- –
- Priehľadnosť
- –
- Animácia
- –
- Rok vzniku
- 2001 · Douglas Crockford
XML
Extensible Markup Language
XML je značkovací jazyk pre štruktúrované dáta, ktorý W3C publikovalo v roku 1998. Používa vnorené značky s atribútmi a podporuje schémy, menné priestory a validáciu, vďaka čomu je robustný pre zložité dokumenty. Je základom kanálov RSS, SVG, dokumentov Office, sitemap a mnohých podnikových a vládnych výmen dát. XML je v porovnaní s JSON rozvláčny, ale prečíta ho každý programovací jazyk aj mnohé tabuľkové nástroje.
- Kompresia
- –
- Priehľadnosť
- –
- Animácia
- –
- Rok vzniku
- 1998 · W3C
JSON sa prevádza na XML, keď musia moderné dáta vstúpiť do staršieho rozhrania: koncového bodu SOAP, produktového feedu, siete elektronickej fakturácie alebo konfiguračného súboru, ktorého spracovanie počíta s elementmi, nie so zloženými zátvorkami.
Prevod JSON do XML – časté otázky
Prečo XML potrebuje jeden koreňový element, keď môj JSON začína poľom?
Špecifikácia XML 1.0 vyžaduje, aby mal každý správne štruktúrovaný dokument práve jeden element, ktorý obsahuje všetko ostatné. Pole JSON takýto obal nemá, preto ho konvertor pridá, pomenuje ho podľa Koreňový tag XML a každú položku poľa vloží dovnútra ako <row>.
Čo sa stane s kľúčmi JSON ako „2024 total“ alebo „unit price“?
Ani jedno nie je platný názov elementu XML: názvy nesmú začínať číslicou ani obsahovať medzery. Takéto kľúče premenujte v JSON ešte pred prevodom, najlepšie na presné názvy tagov, ktoré používa schéma príjemcu, aby výstup nebolo treba potom upravovať.
Ako sa pole JSON vnútri záznamu zapíše v XML?
Ako rovnaký element opakovaný pre každú položku. Pole tags s tromi reťazcami sa stane tromi elementmi <tags> za sebou. Prázdne pole nezanechá nič, čo je jedno z mála miest, kde sa pri prevode JSON na XML stráca informácia.
Prejde XML validáciou XSD môjho partnera?
Len ak štruktúra už zodpovedá. Konvertor zapíše verný a správne štruktúrovaný odpis vášho JSON; nemôže poznať poradie elementov, menné priestory ani atribúty, ktoré partner vyžaduje. Výstup použite ako východisko a upravte ho podľa schémy.
Dá sa previesť XML späť do JSON?
Použite XML na JSON. Pri spätnom prevode počítajte s malými rozdielmi: XML ukladá každú hodnotu ako text, takže číslo alebo true z pôvodného JSON sa môže vrátiť ako reťazec.