YAML na JSON
Bezpłatny konwerter online, który zamienia YAML na standardowe obiekty JSON z użyciem biblioteki js-yaml. Mapowania i listy YAML są automatycznie przekształcane w obiekty oraz tablice JSON, a tryb pretty można przełączać. Wbudowane tryFixYAML naprawia 5 częstych problemów: taby, niezamknięte cudzysłowy, błędne wcięcia, format kluczy i końcowe spacje.
Powiązane Rekomendacje
Dlaczego warto konwertować YAML do JSON
YAML jest wygodny do czytania przez człowieka i dlatego często pojawia się w Kubernetes, Docker Compose, Ansible czy GitHub Actions. JSON z kolei lepiej sprawdza się w API, JavaScript i programowym przetwarzaniu danych. To narzędzie pomaga szybko zamienić konfiguracje YAML na standardowy JSON.
Konwersja działa przez js-yaml: YAML jest parsowany do obiektu JavaScript, a następnie serializowany do JSON. Mapowania YAML stają się obiektami JSON, listy stają się tablicami, a stringi, liczby, booleans i null zachowują odpowiadające typy.
Tryb pretty generuje czytelny JSON z wcięciami 2-spacjowymi, natomiast tryb kompaktowy tworzy jednowierszowy JSON dobry do przesyłania przez sieć, API i przechowywania.
W praktyce pliki YAML często zawierają tabulatory, niedomknięte cudzysłowy, błędne wcięcia lub problematyczne nazwy kluczy. Wbudowane tryFixYAML automatycznie poprawia 5 takich typowych błędów bez wychodzenia z przeglądarki.
Przypadki użycia
- Konwersja manifestów Kubernetes i Helm values.yaml do JSON dla jq, walidacji lub CI/CD
- Zmiana docker-compose.yml na JSON do dalszego użycia w innych narzędziach
- Porównywanie i szablonowanie workflow GitHub Actions lub GitLab CI jako JSON
- Przetwarzanie playbooków Ansible i konfiguracji monitoringu w postaci JSON
- Konwersja specyfikacji OpenAPI / Swagger z YAML do JSON dla generatorów kodu
- Nauka różnic składniowych i typów między YAML a JSON
Jak Używać
- Wklej YAML do lewego panelu lub wgraj plik .yaml / .yml / .txt
- Po 400 ms narzędzie automatycznie pokaże wynik JSON po prawej stronie
- W razie potrzeby przełącz formatowany albo kompaktowy tryb wyjścia
- Jeśli pojawi się błąd, użyj naprawy struktury, aby poprawić typowe problemy YAML
- Skopiuj wynik lub pobierz go jako converted.json
Funkcje
- Parsuje YAML przez js-yaml: mapowania, listy, struktury zagnieżdżone, ciągi wielowierszowe, anchory i aliasy
- Automatycznie naprawia 5 częstych błędów YAML: taby, niezamknięte cudzysłowy, nieprawidłowe wcięcia, specjalne klucze i spacje na końcu linii
- Obsługuje pretty output z wcięciem 2 spacji oraz kompaktowy JSON w jednej linii
- Rekurencyjnie zamienia zagnieżdżone struktury YAML na obiekty i tablice JSON
- Pomija komentarze YAML, więc wynik zawiera wyłącznie dane JSON
- Uruchamia auto-konwersję 400 ms po wpisaniu tekstu dla szybkiego podglądu
- Pokazuje wynik JSON z podświetlaniem składni, co ułatwia czytanie złożonych struktur
- Obsługuje wgrywanie plików, kopiowanie, pobieranie i przywracanie historii w przeglądarce
- Całe przetwarzanie odbywa się lokalnie i nie wysyła konfiguracji na serwer
Często Zadawane Pytania
Jak przekonwertować YAML na JSON?
Wklej YAML do lewego panelu albo wczytaj plik .yaml / .yml / .txt, a narzędzie przy użyciu js-yaml automatycznie zamieni go na standardowy JSON. Mapowania YAML stają się obiektami JSON, a listy — tablicami JSON. Konwersja uruchamia się automatycznie po około 400 ms od zakończenia wpisywania.
Czy komentarze YAML są zachowywane w JSON?
Nie. Komentarze YAML zaczynające się od # służą tylko do czytania przez człowieka i są ignorowane podczas parsowania. Wynikowy JSON zawiera wyłącznie dane. Jeśli chcesz zachować komentarze, trzymaj oryginalny plik YAML albo dodaj własne pole comment w JSON.
Czy narzędzie naprawi błędne wcięcia lub niedomknięte cudzysłowy w YAML?
Tak. Wbudowane tryFixYAML automatycznie poprawia 5 częstych problemów: tabulatory, niedomknięte cudzysłowy, nieregularne wcięcia, specjalne nazwy kluczy i spacje na końcu linii. Przy mocno uszkodzonym YAML nadal może być potrzebna ręczna korekta.
Rozwiązywanie problemów
Błąd parsowania YAML
Najczęściej winne są pomieszane taby i spacje, uszkodzone wcięcia, niedomknięte cudzysłowy albo brak dwukropka. W pierwszej kolejności spróbuj automatycznej naprawy struktury.
Komentarze nie pojawiają się w JSON
JSON nie obsługuje komentarzy, dlatego linie z # są usuwane podczas konwersji. Jeśli komentarze są ważne, zachowaj je osobno.
Zniknęły anchors i aliases
js-yaml rozwija odwołania przed konwersją do JSON. W rezultacie w JSON pozostają tylko rozwinięte wartości, bez składni referencji.
Data stała się stringiem
Nawet jeśli YAML rozpoznaje datę, JSON wypisuje ją jako string ISO. JSON nie ma natywnego typu Date.
Jak obsłużyć multi-document YAML
To narzędzie zakłada pojedynczy dokument YAML. Pliki rozdzielone przez --- najlepiej podzielić i konwertować osobno.
Słownik
- YAML
- Czytelny dla człowieka format serializacji danych, bardzo popularny w plikach konfiguracyjnych DevOps.
- JSON
- JavaScript Object Notation — standardowy format danych dla API, aplikacji webowych i wielu języków programowania.
- js-yaml
- Popularna biblioteka JavaScript służąca do parsowania YAML i zamiany go na obiekty JavaScript.
- Indentation
- Wcięcia w YAML określające zagnieżdżenie. Zwykle używa się spacji zamiast tabulatorów.
- Anchor
- Składnia YAML &name służąca do definiowania wartości wielokrotnego użytku.
- Alias
- Składnia YAML *name służąca do odwołania do wcześniej zdefiniowanego anchor.
- Pretty Output
- Sformatowany JSON z wcięciami i przejściami do nowych linii, wygodny do czytania.
- tryFixYAML
- Wbudowany mechanizm automatycznej naprawy najczęstszych błędów YAML przed konwersją.
Mapowanie typów YAML do JSON
Podstawowe struktury YAML są konwertowane do JSON według następujących reguł.
| Typ YAML | Przykład YAML | Wyjście JSON | Reguła |
|---|---|---|---|
| string | name: Alice | "name": "Alice" | String pozostaje stringiem JSON. |
| number | age: 30 | "age": 30 | Liczba pozostaje liczbą JSON. |
| boolean | enabled: true | "enabled": true | true / false stają się booleanami JSON. |
| sequence | - a
- b | ["a", "b"] | Lista YAML staje się tablicą JSON. |
| mapping | user:
name: Alice | {"user": {"name": "Alice"}} | Mapowanie YAML staje się obiektem JSON. |
Porównanie YAML i JSON
Oba formaty opisują dane, ale różnią się czytelnością i typowymi zastosowaniami.
| Kryterium | YAML | JSON | Uwaga |
|---|---|---|---|
| Czytelność | wysoka | średnia | YAML lepiej nadaje się do konfiguracji czytanych przez ludzi. |
| Komentarze | # obsługiwane | brak | Standard JSON nie przewiduje komentarzy. |
| Tablice | - item | [item] | YAML używa myślników, JSON nawiasów kwadratowych. |
| Główne użycie | konfiguracje | API / dane | YAML częściej dla konfiguracji, JSON dla wymiany danych. |
Automatycznie naprawiane błędy YAML
tryFixYAML koryguje kilka najczęstszych problemów.
| Typ błędu | Przykład | Po naprawie | Opis |
|---|---|---|---|
| Tabulatory | key:
value | key:
value | Tabulatory są zamieniane na spacje. |
| Niedomknięte cudzysłowy | key: 'value | key: 'value' | Brakujący cudzysłów jest uzupełniany. |
| Spacje na końcu linii | key: value | key: value | Zbędne spacje są usuwane. |
| Nieprawidłowe wcięcia | key:
value | key:
value | Wcięcia są porządkowane do poprawnej postaci. |
Privacy & Security
To narzędzie YAML na JSON wykonuje parsowanie YAML, serializację JSON i naprawę błędów całkowicie lokalnie w JavaScript przeglądarki. Wprowadzony YAML i wygenerowany JSON nie są wysyłane na serwer. Dzięki temu możesz bezpieczniej przetwarzać konfiguracje zawierające sekrety Kubernetes, klucze API i dane dostępowe do baz danych.
Authoritative References
- YAML.orgSpecyfikacja YAML 1.2
- GitHubRepozytorium js-yaml na GitHub
- KubernetesDokumentacja konfiguracji Kubernetes
- DockerSpecyfikacja Docker Compose
- AnsiblePrzewodnik YAML dla Ansible
- JSON Compress
- Konwerter CSV na JSON
- JSON na CSV
- JSON Diff
- JSON Escape / Unescape
- Spłaszczanie JSON
- JSON Formatter
- Generator JSON
- Zapytanie JSONPath
- Scal JSON
- Naprawa JSON
- Walidator JSON Schema
- Sortowanie JSON
- JSON Stringify
- JSON do HTML
- JSON do Javy
- JSON na Markdown
- JSON do SQL
- JSON do TOML
- JSON do TypeScript
- XML na JSON
- Konwertuj JSON do XML
- YAML na JSON
- JSON → YAML
- JSON na Go
- JSON na Rust
- JSON to Swift
- JSON na C#
- JSON na C++
- JSON na PHP
- JSON na Python