Konwerter JSON na XML
Zamień obiekt lub tablicę JSON na poprawny dokument XML z własną nazwą elementu głównego, wcięciami i deklaracją.
-
1Wprowadź dane
Wpisz treść, wklej tekst lub załaduj plik z dysku. -
2Kliknij przycisk
Narzędzie natychmiast przetworzy Twoje dane w przeglądarce. -
3Pobierz wynik
Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
return "Wynik gotowy w 0.1s";
}
Elementy XML
Łącznie z elementem głównym
Głębokość zagnieżdżenia
Rozmiar XML
283 B · o 42% większy niż JSON
Rozmiar JSON
199 B
Linie dokumentu
XML
Jak JSON zamienia się w XML
| JSON (wejście) | XML (wynik) | Co się dzieje |
|---|---|---|
| {"imie":"Jan"} | <root><imie>Jan</imie></root> | Para klucz–wartość staje się elementem, a całość trafia do elementu głównego. |
| {"osoba":{"imie":"Jan"}} | <root><osoba><imie>Jan</imie></osoba></root> | Obiekt w obiekcie to elementy zagnieżdżone — hierarchia zostaje zachowana. |
| {"tagi":["xml","json"]} | <root><tagi>xml</tagi><tagi>json</tagi></root> | XML nie ma tablic: każdy element tablicy to osobny element o tej samej nazwie. |
| {"cena":19.99,"brak":null,"ok":true} | <root><cena>19.99</cena><brak/><ok>true</ok></root> | Liczby i wartości logiczne trafiają do XML jako tekst, a null daje element pusty. |
| {"imie i nazwisko":"Jan K."} | <root><imie_i_nazwisko>Jan K.</imie_i_nazwisko></root> | Znaki niedozwolone w nazwie elementu (np. spacje) zamieniane są na „_”. |
| {"2konto":"x"} | <root><_2konto>x</_2konto></root> | Nazwa elementu nie może zaczynać się od cyfry — dodawane jest „_”. |
| [1,2] | <root><item>1</item><item>2</item></root> | Tablica na najwyższym poziomie dostaje elementy o nazwie „item” (nazwę zmienisz w opcjach). |
| {"@attributes":{"id":1}} | <root><k_attributes><id>1</id></k_attributes></root> | Konwerter nie tworzy atrybutów XML — klucz „@attributes” staje się zwykłym elementem k_attributes. |
Typy danych giną
W XML wszystko jest tekstem: liczby, true/false i napisy wyglądają tak samo, a null daje pusty element, nieodróżnialny od pustego tekstu. Liczby z ułamkiem zapisujemy w najkrótszej dokładnej postaci (1.50 → 1.5), a duże liczby całkowite zachowują wszystkie cyfry. To system docelowy musi wiedzieć, że <cena> jest liczbą.
Nazwy elementów
Nazwa elementu zawiera litery, cyfry, „_”, „-” i „.”, a zaczyna się od litery lub „_”. Konwerter poprawia klucze sam (spacja → „_”, 2konto → _2konto), więc dwa różne klucze, np. „a b” i „a_b”, dadzą dwa elementy o tej samej nazwie. Jeśli system docelowy wymaga konkretnych nazw, nadaj je już w JSON-ie.
Tablice
XML nie ma tablic, więc tablica pod kluczem to powtórzone elementy o nazwie tego klucza. Tablica na najwyższym poziomie albo wewnątrz innej tablicy nie ma nazwy — dostaje ją z pola „Element tablicy”. Lista z jednym elementem wygląda potem jak zwykłe pole, a pusta tablica pod kluczem daje jeden pusty element.
Atrybuty i kodowanie
JSON nie ma atrybutów, więc cała zawartość trafia do elementów. Deklaracja standardowa to <?xml version="1.0"?> — dokument jest w UTF-8, bo to domyślne kodowanie XML. Wybierz „Z kodowaniem UTF-8”, jeśli system odbierający wymaga jawnego encoding, albo „Bez deklaracji”, gdy wklejasz fragment do większego pliku.
Oceń to narzędzie:
Powiązane narzędzia
Inne narzędzia, które mogą Ci się przydaćPodaj dalej
Komuś też się przyda?
Wyślij znajomemu link. Otworzy narzędzie od razu, bez konta i bez opłat.
JSON to XML – konwerter danych JSON na XML online
Konwerter JSON na XML zamienia obiekt {…} lub tablicę […] JSON na dokument XML: każdy klucz staje się elementem, zagnieżdżony obiekt – elementem zagnieżdżonym, a kolejne pozycje tablicy – powtórzonymi elementami o tej samej nazwie. Wklejasz dane z API lub pliku, a XML pojawia się od razu pod polem, gotowy do skopiowania albo pobrania jako plik .xml.
JSON i XML – dwa formaty, jeden konwerter
JSON (JavaScript Object Notation) to popularny, lekki format wymiany danych, używany przede wszystkim w aplikacjach webowych i mobilnych – szczególnie w API. XML (eXtensible Markup Language) to rozbudowany, uniwersalny format, szeroko stosowany w systemach korporacyjnych, integracjach B2B, systemach finansowych i medycznych.
W wielu projektach dane przychodzą jako JSON, ale docelowy system przyjmuje tylko XML. Wtedy konwerter przekłada struktury obiektów i tablic JSON na zagnieżdżone znaczniki XML i nie trzeba niczego przepisywać ręcznie.
Dlaczego warto korzystać z narzędzia JSON to XML?
1. Integracja z systemami wymagającymi XML
Wiele starszych lub specjalistycznych systemów ERP, CRM, księgowych czy logistycznych wciąż opiera integracje na XML. Narzędzie pozwala zamienić JSON z nowoczesnych API na XML akceptowany przez takie rozwiązania.
2. Import do aplikacji bez obsługi JSON
XML jest standardem w integracjach systemów, hurtowniach danych i middleware. Konwersja JSON → XML ułatwia import danych do narzędzi, które nie czytają JSON, ale radzą sobie z XML.
3. Przygotowanie danych do raportów
Część narzędzi raportowych i ETL przyjmuje XML jako format wejściowy. Dane z API zamienisz w plik gotowy do dalszego przetwarzania, np. transformacją XSLT.
4. Kopie zapasowe i archiwizacja
XML sprawdza się jako format archiwizacji – jest czytelny, strukturalny i łatwy do przetwarzania. Konwerter pozwala zapisać kopię danych JSON w postaci pliku XML.
Jak zamienić JSON na XML
Krok 1: Wklej dane JSON
Skopiuj dane JSON (np. z odpowiedzi API, pliku .json lub logów) i wklej je do pola „Dane JSON”. Na start możesz wczytać jeden z trzech przykładów: obiekt, listę produktów albo zestaw typów danych. Wejście może mieć do 1 MB.
Krok 2: Ustaw opcje
| Opcja | Co robi | Domyślnie |
|---|---|---|
| Element główny | nazwa znacznika, który obejmuje cały dokument | root |
| Element tablicy | nazwa pozycji tablicy bez własnego klucza: tablicy na najwyższym poziomie i tablicy w tablicy | item |
| Układ XML | czytelny z wcięciami albo jedna linia (mniejszy plik) | czytelny |
| Deklaracja XML | standardowa <?xml version="1.0"?>, z jawnym encoding="UTF-8" albo bez deklaracji, gdy wklejasz fragment do większego pliku | standardowa |
Krok 3: Sprawdź wynik i pobierz plik XML
XML odświeża się przy każdej zmianie danych lub opcji, a przycisk „Konwertuj na XML” (albo Ctrl+Enter) uruchamia konwersję jawnie. Nad wynikiem widać liczbę elementów (łącznie z głównym), głębokość zagnieżdżenia, rozmiar XML i JSON w KB oraz liczbę linii. Wynik skopiujesz przyciskiem „Kopiuj XML” lub zapiszesz przyciskiem „Pobierz plik .xml” jako dokument.xml.
Gdy JSON zawiera błąd, zamiast wyniku pojawia się komunikat z linią, kolumną i przyczyną, np. zbędny przecinek przed }, apostrofy zamiast cudzysłowów albo brak dwukropka po kluczu. Rozbudowany plik możesz wcześniej sprawdzić w walidatorze JSON.
Przykład konwersji JSON na XML krok po kroku
Wejście (przykład „lista”) to tablica dwóch produktów:
[{"id": 1, "nazwa": "Kawa ziarnista", "cena": 42.5, "dostepny": true}, {"id": 2, "nazwa": "Herbata zielona", "cena": 19.99, "dostepny": false}]
Po wpisaniu produkty jako elementu głównego, produkt jako elementu tablicy i wybraniu układu „Jedna linia” bez deklaracji wynik wygląda tak:
<produkty><produkt><id>1</id><nazwa>Kawa ziarnista</nazwa><cena>42.5</cena><dostepny>true</dostepny></produkt><produkt><id>2</id><nazwa>Herbata zielona</nazwa><cena>19.99</cena><dostepny>false</dostepny></produkt></produkty>
Dokument ma 11 elementów (1 główny + 2 elementy produkt + 2 × 4 pola) i 3 poziomy zagnieżdżenia. Tablica leży na najwyższym poziomie, więc nie ma klucza, z którego dałoby się wziąć nazwę – do tego służy pole „Element tablicy”. Gdyby te same dane były zapisane jako {"produkty": […]}, każdy produkt stałby się osobnym elementem produkty wewnątrz root.
Co konwersja zachowuje, a co zmienia
Wartości i kolejność pól przechodzą bez zmian, ale kilka konstrukcji JSON nie ma w XML bezpośredniego odpowiednika:
| W JSON | W XML |
|---|---|
liczby 19.99 i 1.50 | tekst 19.99 i 1.5 – najkrótszy dokładny zapis, bez końcówek typu 19.989999999999998 |
duża liczba całkowita 12345678901234567890 | wszystkie cyfry zachowane |
true, false, null | tekst true / false, a null to pusty element |
pusta tablica "pusta_lista": [] | jeden pusty element <pusta_lista/> |
tablica w tablicy "m": [[1, 2], [3]] | <m><item>1</item><item>2</item></m><m><item>3</item></m> |
tekst "Ala & Kot <3" | Ala & Kot <3 – znaki specjalne zamieniane na encje |
| znaki sterujące niedozwolone w XML 1.0 | usuwane z tekstu |
Klucze, które nie są poprawnymi nazwami elementów, konwerter poprawia sam: spacja i inne niedozwolone znaki zamieniają się w „_”, a przed cyfrą na początku dodawane jest „_” (2konto → _2konto). Pułapka: klucze „a b” i „a_b” dają wtedy ten sam element a_b. Jeśli system docelowy sprawdza XML schematem XSD, nadaj właściwe nazwy już w JSON. O typy musi zadbać odbiorca – z samego XML nie wynika, że <cena> jest liczbą, a pusty element może oznaczać zarówno null, jak i pusty tekst.
JSON vs XML – krótkie porównanie
- JSON – dobrze pasuje do aplikacji webowych, API, front-endu i lekkich integracji.
- XML – preferowany w systemach korporacyjnych, integracjach B2B i starszych systemach.
- JSON ma typy danych (liczba, tekst, wartość logiczna, null) i tablice, których XML nie zna.
- XML obsługuje atrybuty, schematy (XSD), przestrzenie nazw i rozbudowane walidacje.
Przykładowe zastosowania w różnych branżach
Finanse i księgowość
Systemy księgowe, fakturowe i bankowe często przyjmują dane w formacie XML. Transakcje, wyciągi czy kursy walut pobrane z API jako JSON zamienisz na pliki XML do importu.
Zarządzanie projektami i integracje
Dane o zadaniach, użytkownikach i harmonogramach są zwykle zwracane jako JSON. Konwersja na XML ułatwia przekazanie ich do systemów raportowania i wewnętrznych hurtowni danych.
Planowanie wydarzeń
Listy uczestników, sesji, sal i zasobów zebrane w JSON można przekształcić na XML do importu w systemach rejestracji, CRM lub systemach mailingowych.
Opieka zdrowotna
Część standardów medycznych (np. HL7 w odmianach XML) opiera się na XML. Konwerter pomaga zamienić dane z systemów zwracających JSON na postać, którą da się dalej dopasować do wymaganego schematu.
Ograniczenia konwertera
Wejście musi być obiektem lub tablicą – pojedyncza liczba, tekst, true, false czy null nie tworzy dokumentu XML. Limit to 1 MB danych JSON, 50 000 elementów w wyniku i 512 poziomów zagnieżdżenia. Konwerter nie tworzy atrybutów XML ani przestrzeni nazw: cała zawartość trafia do elementów.
Najczęściej zadawane pytania (FAQ)
Czy muszę znać XML, żeby korzystać z narzędzia?
Nie. Wystarczy poprawny JSON – konwerter sam zbuduje dokument XML z elementem głównym i zagnieżdżeniem odpowiadającym strukturze danych.
Jak przekonwertować JSON na XML z atrybutami?
To narzędzie nie tworzy atrybutów: każde pole JSON staje się elementem, a klucz @attributes zamienia się w zwykły element k_attributes. Jeśli odbiorca wymaga atrybutów, dodaj je po konwersji, np. transformacją XSLT.
Dlaczego pojawia się błąd „JSON musi być obiektem albo tablicą”?
Dokument XML potrzebuje elementu głównego z zawartością, więc sama liczba lub tekst nie zostaną przekonwertowane. Owiń wartość w obiekt, np. {"wartosc": 42}, co da <root><wartosc>42</wartosc></root>.
Czy mogę pobrać wynik jako plik XML?
Tak. Przycisk „Pobierz plik .xml” zapisuje wynik jako dokument.xml w kodowaniu UTF-8. Możesz też skopiować XML do schowka i wkleić go do edytora lub innego systemu.
Jak duży plik JSON można zamienić na XML?
Do 1 MB danych wejściowych, przy czym wynik może mieć najwyżej 50 000 elementów. Większy plik podziel na części, np. po kilka tysięcy rekordów tablicy.