Narzędzia
PL

Konwerter JSON do YAML

Wklej JSON, aby otrzymać przejrzysty, czytelny YAML do plików konfiguracyjnych, manifestów Kubernetes czy pipeline'ów CI – albo zmień kierunek, aby zamienić YAML na JSON.

JSON

YAML

Prywatnie: Twoje dane są przetwarzane w przeglądarce i nigdy nie trafiają na serwer.

Jak przekonwertować JSON do YAML

  1. Wklej JSON lub otwórz plik – YAML pojawia się na bieżąco podczas pisania. Wybierz wcięcie z 2 lub 4 spacji.
  2. Aby przekonwertować dane w drugą stronę, przełącz kierunek na YAML → JSON i wklej YAML.
  3. Skopiuj wynik lub pobierz go jako plik .yaml lub .json.

JSON vs YAML – porównanie

JSONYAML
Strukturanawiasy klamrowe {} i kwadratowe []wcięcia i elementy listy z -
Ciągi znakówzawsze w podwójnych cudzysłowachcudzysłowy tylko w razie potrzeby
Komentarzeniedozwolone# comment
Tekst wielowierszowysekwencje \nbloki literalne z |
Typowe zastosowanieAPI i wymiana danychpliki konfiguracyjne

YAML 1.2 jest nadzbiorem JSON, więc dokument JSON jest już poprawnym YAML-em. Konwerter zapisuje jednak dane w czytelniejszym stylu blokowym.

Wartości, które w YAML trzeba ująć w cudzysłowy

Niektóre słowa bez cudzysłowów zmieniają w YAML swój typ: yes, no, on i off są wartościami logicznymi w parserach YAML 1.1, 007 i 1e3 to liczby, a null lub ~ oznaczają null. To słynny „problem Norwegii” (Norway problem): kod kraju NO bez cudzysłowów zamienia się w false. Konwerter automatycznie ujmuje takie ciągi w cudzysłowy, więc YAML po wczytaniu daje dokładnie te same dane.

Obsługiwany YAML w kierunku YAML → JSON

Parser rozumie YAML używany w plikach konfiguracyjnych i API: mapowania i listy w stylu blokowym, ciągi znaków bez cudzysłowów, w apostrofach i w cudzysłowach, bloki wielowierszowe | i >, kolekcje inline [ ] i { }, komentarze oraz znacznik dokumentu ---. Kotwice (&), aliasy (*) i niestandardowe tagi są zgłaszane jako nieobsługiwane wraz z numerem wiersza. Z pliku zawierającego wiele dokumentów konwertowany jest tylko pierwszy.

Najczęściej zadawane pytania

Czy YAML jest nadzbiorem JSON?

YAML 1.2 został zaprojektowany jako nadzbiór JSON, więc praktycznie każdy plik JSON jest też poprawnym YAML-em. W drugą stronę to nie działa: YAML ma komentarze, kotwice i bloki wielowierszowe, których brakuje w JSON.

Czy komentarze są zachowywane przy konwersji YAML do JSON?

Nie. JSON nie obsługuje komentarzy, więc są one pomijane. Klucze, wartości i ich kolejność zostają zachowane.

Dlaczego mój YAML jest odrzucany?

Najczęstsze przyczyny to tabulatory użyte do wcięć (YAML dopuszcza tylko spacje), elementy tej samej listy lub mapy, które nie zaczynają się w tej samej kolumnie, oraz brak spacji po dwukropku. Komunikat błędu wskazuje numer wiersza.

Jakie typy otrzymują wartości YAML w JSON?

Zgodnie ze schematem core YAML 1.2: true/false stają się wartościami logicznymi, null i ~ stają się null, a zwykłe liczby – liczbami JSON, natomiast słowa takie jak yes pozostają ciągami znaków. Kody takie jak "007" ujmij w YAML w cudzysłowy, aby zachować je jako tekst.