Przegląd / Programowanie i kod / Konwerter YAML ↔ JSON
Programowanie i kod 100% w przeglądarce i offline

Konwerter YAML ↔ JSON

Zamieniaj YAML na JSON i JSON na YAML w przeglądarce. Obsługuje wiele dokumentów, kotwice i aliasy, a błędy pokazuje z wierszem i kolumną.

Wklej lub wpisz dane; wynik pojawia się od razu, a błędy są pokazane pod polem.

Twoje pliki i dane nigdy nie opuszczają przeglądarki – nic nie jest wysyłane.

Opcje

Czyta YAML 1.2. yes, no, on i off pozostają tekstem, daty pozostają tekstem, a liczby ósemkowe wymagają 0o. Komentarze znikają. Dokumenty rozdzielone przez --- tworzą tablicę JSON. Liczby całkowite powyżej 2^53 tracą precyzję, a .nan i .inf zamieniają się w null. Maksymalne dane: 2 000 000 znaków.

YAML na JSON: co robi konwerter z Twoim plikiem

Plik docker-compose.yml, a skrypt przyjmuje tylko JSON. Wklej YAML po lewej, odczytaj JSON po prawej. Ta sama strona zamienia też JSON na YAML, gdy odpowiedź API ma trafić do czytelnego pliku konfiguracyjnego.

Narzędzie czyta YAML 1.2. W tej wersji yes, no, on i off to zwykłe teksty, nie wartości logiczne, a data taka jak 2001-12-14 zostaje tekstem. Liczba ósemkowa wymaga przedrostka 0o: 0o17 to 15, a 017 to 17.

Kotwice (&nazwa), aliasy (*nazwa) i klucze scalające (<<: *nazwa) są rozwiązywane, więc w JSON lądują skopiowane wartości. JSON nie zna komentarzy, dlatego znikają.

Kilka dokumentów w jednym pliku

Jeśli --- rozdziela dokumenty, powstaje tablica JSON z jednym elementem na dokument, a wiersz statystyk podaje ich liczbę, np. „Dokumenty: 3”. Przy jednym dokumencie wynikiem jest zwykły obiekt albo lista. Puste dokumenty na końcu są pomijane.

Konwersja pliku konfiguracyjnego krok po kroku

  1. Wybierz kierunek przyciskami „YAML → JSON” lub „JSON → YAML”. Każdy pokazuje przykład, dopóki nie wpiszesz własnego tekstu.
  2. Wklej tekst. Konwersja startuje 300 milisekund po ostatnim naciśnięciu klawisza. Przy pierwszym uruchomieniu ładuje się biblioteka YAML, co chwilę trwa.
  3. Ustaw opcje: wcięcie JSON o 2 spacjach, 4 spacjach lub zminimalizowany zapis oraz „Sortuj klucze alfabetycznie”. Dla wyniku YAML wybierz też wcięcie i to, czy długie wiersze zawijają się po 80 znakach.
  4. Kliknij „Kopiuj” albo „Pobierz”. Plik nazywa się converted.json lub converted.yaml.

Teksty podobne do liczb, wartości logicznych i null

W drodze z JSON do YAML tekst "123" nie może stać się liczbą 123, więc narzędzie zapisuje go w cudzysłowie. Tak samo "null", "true", "~" i pusty tekst. W cudzysłowie lądują też "yes", "no", "on", "off" oraz wszystko, co zaczyna się jak data, bo parsery YAML 1.1 czytają je jako wartości logiczne lub znaczniki czasu. Teksty z łamaniem wiersza trafiają do bloków z |.

Błędy, uwagi i wartości, których JSON nie przyjmie

Uszkodzony YAML kończy się komunikatem biblioteki z wierszem i kolumną, na przykład gdy wcięciem jest tabulator. Dwa takie same klucze w jednej mapie to błąd, a nie ciche nadpisanie. Alias bez kotwicy powyżej też. Nieznany tag, np. !custom, daje tylko uwagę, a wartość zostaje tekstem.

YAML dopuszcza .nan, .inf i -.inf, JSON nie. Narzędzie wpisuje wtedy null i podaje, ile wartości zamieniło. Liczby całkowite powyżej 2^53 są zaokrąglane do najbliższej liczby, jaką przechowuje JavaScript, z uwagą w wyniku. Jeśli tekst JSON powtarza klucz, obowiązuje ostatnia wartość. Dane powyżej 2 000 000 znaków są odrzucane z komunikatem.

Co dzieje się z Twoimi danymi

Nic nie jest wysyłane. Biblioteka YAML to skrypt tej strony, który przeglądarka pobiera raz, przy pierwszej konwersji. Potem wszystko działa w karcie przeglądarki. „Kopiuj” używa schowka, „Pobierz” zapisuje plik z przeglądarki. W panelu sieci nie zobaczysz żądania z Twoim tekstem.

Często zadawane pytania (FAQ)

Narzędzie czyta YAML 1.2, w którym tylko true i false są wartościami logicznymi. Parsery YAML 1.1 czytają yes, no, on i off jako wartości logiczne, więc starsze programy mogą dać inny wynik.