{ }JSONKit.tools

Konwerter JSON na YAML

Wklej JSON i otrzymaj czytelny YAML — z zachowaną pierwotną kolejnością kluczy i wartościami niejednoznacznymi ujętymi w cudzysłowy, żeby plik wrócił bez niespodzianek.

YAML → JSON⇄JSON → YAML

JSON

YAML

Czekam na dane…

O tym narzędziu

Przejście z JSON-a na YAML polega głównie na uczynieniu formatu maszynowego czytelnym dla ludzi: wcięcia zastępują nawiasy klamrowe, elementy listy dostają myślnik, a cudzysłowy znikają wszędzie tam, gdzie nie są potrzebne. Uważać trzeba tylko na niejednoznaczność — ciąg w rodzaju „no” albo „007” zostałby odczytany z powrotem jako wartość logiczna lub liczba, więc te pozostają w cudzysłowach. Kolejność kluczy jest zachowana, więc przekonwertowany dokument nadal czyta się w kolejności, w jakiej powstał.

Jak używać

  1. 1Wklej swój JSON do panelu wejścia.
  2. 2YAML pojawia się od razu, z pokolorowanymi kluczami.
  3. 3Skopiuj go do pliku konfiguracyjnego — a gdy trzeba wrócić, użyj strony YAML na JSON.

Częste pytania

›Po co w ogóle konwertować JSON na YAML?

Dla czytelności i komentarzy. Konfigurację dostarczaną jako JSON — obiekt Kubernetes, definicję CI, plik ustawień narzędzia — o wiele łatwiej przejrzeć i opatrzyć notatkami, gdy jest w YAML-u, a większość tych narzędzi przyjmuje oba formaty.

›Czy wyjście zachowuje kolejność moich kluczy?

Tak. Klucze są wypisywane w kolejności, w jakiej występują w dokumencie JSON, bez sortowania alfabetycznego, więc przekonwertowany plik nadal czyta się tak, jak został napisany.

›Jak traktowane są długie ciągi i znaki specjalne?

Wartości, które w YAML-u byłyby niejednoznaczne — zera wiodące, słowa yes i no, ciągi wyglądające na liczby lub daty — są automatycznie ujmowane w cudzysłowy, dzięki czemu plik wraca bezstratnie do tego samego JSON-a.

›Co dzieje się z null?

Staje się pustą wartością, którą YAML odczytuje jako null. Zapisanie jej wprost jako null albo ~ znaczy dla parsera to samo.

›Czy mogę przekonwertować z powrotem?

Tak — YAML na JSON to strona siostrzana, a podróż w obie strony jest bezstratna dla wszystkiego, co JSON potrafi wyrazić. Komentarze dopisane później do YAML-a nie przetrwają drogi powrotnej.