Nalepite JSON i dobijte ispravan, uvučen XML. Objekti postaju ugnežđeni elementi nazvani po ključevima, nizovi postaju ponovljeni elementi, a primitivne vrednosti postaju tekst. Možete zadati naziv korenskog elementa, a sve radi u pregledaču — JSON se nikada ne šalje.
Kako radi
JSON se parsira i obilazi rekurzivno. Svako svojstvo objekta postaje podelement nazvan po ključu; ugnežđeni objekti ugnežđuju svoje elemente; a niz proizvodi isti element ponovljen jednom po stavci, što je standardan način predstavljanja lista u XML-u. Vrednosti se pretvaraju u tekst i XML-escape-uju, pa se znakovi poput &, < i " pretvaraju u entitete i izlaz ostaje ispravan.
Pošto su nazivi XML elemenata stroži od JSON ključeva, ključevi se čiste: znakovi koji nisu slova, cifre, crtice, donje crte ili tačke zamenjuju se donjom crtom, a dodaje se početna donja crta ako bi naziv počinjao cifrom. JSON čiji je najviši nivo niz uvija se u korenski element sa <item> decom, pa rezultat uvek ima tačno jedan koren kako XML zahteva. Atributi se ne generišu — svaka vrednost je izražena kao element, što je nedvosmisleno i čisto se vraća nazad.
Primeri iz prakse
Objekat konfiguracije
{"server":{"host":"localhost","port":8080}} postaje <root> sa ugnežđenim <server> koji sadrži <host> i <port> elemente — spremno za XML konfiguraciju.
Lista zapisa
Niz poput [{"id":1},{"id":2}] uvija se kao <root> sa dvoje <item> dece, svako sa <id>, dajući ispravan XML sa jednim korenom.
Preimenovanje korena
Postavite naziv korena na „catalog” i {"book":"…"} postaje <catalog><book>…</book></catalog> umesto podrazumevanog <root> omotača.
Česta pitanja
Kako se JSON nizovi predstavljaju u XML-u?
Kao ponovljeni elementi. Niz pod ključem „tag” postaje nekoliko <tag> elemenata, po jedan za svaku stavku — uobičajen XML način izražavanja liste, jer XML nema poseban tip niza.
Šta se dešava sa nizom na najvišem nivou?
Uvija se unutar korenskog elementa sa svakom stavkom kao <item> detetom. XML zahteva tačno jedan korenski element, pa se gola lista ne može predstaviti bez omotača.
Zašto su neki moji ključevi promenjeni?
Nazivi XML elemenata ne mogu sadržati razmake ni većinu simbola i ne mogu počinjati cifrom. Neispravni znakovi se zamenjuju donjom crtom i dodaje se početna donja crta gde je potrebno, pa je izlaz uvek ispravan.
Da li pravi atribute ili samo elemente?
Samo elemente. Predstavljanje svake vrednosti kao elementa je nedvosmisleno i izbegava nagađanje koja polja treba da budu atributi. Ako vam trebaju atributi, moraćete naknadno da obradite izlaz.
Da li se posebni znakovi escape-uju?
Da. Ampersandi, uglaste zagrade i dvostruki navodnici u vrednostima pretvaraju se u XML entitete (&, <, >, ") da XML ostane ispravan.
Kako se obrađuju null i prazni objekti?
Vrednost null, prazan objekat i prazan niz svi postaju samozatvarajući element poput <key/>, što je kompaktan i ispravan način da se predstavi „bez sadržaja”.
Da li je izlaz uvučen?
Da, sa dva razmaka po nivou, pa je lako čitljiv. Ako vam treba kompaktan, možete propustiti rezultat kroz XML minifikator ili sami ukloniti razmake.
Može li da pretvori XML nazad u JSON?
Ne ovaj alat — ide samo iz JSON-a u XML. XML-u-JSON je posebna konverzija sa sopstvenim dvosmislenostima (atributi, mešani sadržaj) i zahtevala bi namenski alat.
Da li se moji podaci šalju?
Ne. Konverzija se u potpunosti izvršava u vašem pregledaču pomoću JavaScript-a. Ništa se ne šalje na server, i radi van mreže kada se stranica učita.
Srodni alati
JSON u CSV
Pretvorite JSON niz objekata u CSV, direktno u pregledaču. Izaberite razdvajač; ugneždene vrednosti ostaju kao JSON.
Alati za programere
CSV u JSON
Pretvorite CSV u JSON u pregledaču. Zaglavlje u ključeve, prilagođen razdvajač i opciono prepoznavanje brojeva.
Alati za programere
JSON formatiranje
Ulepšajte, proverite ili minifikujte JSON u pregledaču — uz jasne poruke o greškama. Ništa se ne šalje.
Alati za programere
Parser query stringa
Rastavite query string ili URL na dekodirane parove ključ/vrednost i JSON. Ponovljeni ključevi postaju nizovi. U pregledaču.
Alati za programere
Dinari u evre
Pretvarajte srpske dinare u evre (i nazad) po zvaničnom srednjem kursu NBS, uz prikazan datum kursa.
Finansije i plata
Velika i mala slova
Pretvorite tekst u VELIKA SLOVA, mala slova, Naslovna Slova ili rečenični oblik — uz ispravno tretiranje č, ć, š, đ, ž.
Alati za tekst