Πώς να το χρησιμοποιήσετε
- Επικολλήστε JSON στο πεδίο εισόδου ή δοκιμάστε το παράδειγμα.
- Επιλέξτε εσοχή 2 ή 4 κενών.
- Αντιγράψτε το YAML ή κατεβάστε το ως αρχείο .yaml.
Πώς λειτουργεί
Το JSON αναλύεται αυστηρά· τα συντακτικά σφάλματα εξηγούνται με τη γραμμή και τη στήλη τους (κόμματα στο τέλος, μονά εισαγωγικά, σχόλια και παρόμοια). Στη συνέχεια τα δεδομένα γράφονται ως YAML τύπου block με τη βιβλιοθήκη ανοιχτού κώδικα yaml, διατηρώντας τη σειρά των κλειδιών και χωρίς ποτέ να αναδιπλώνει μεγάλες συμβολοσειρές.
Οι συμβολοσειρές που ένας παλαιότερος αναλυτής YAML 1.1 θα διάβαζε ως κάτι άλλο μπαίνουν σε εισαγωγικά: yes, no, on, off, αριθμοί με αρχικά μηδενικά όπως 0777 και τιμές που μοιάζουν με ημερομηνίες όπως 2024-01-31. Έτσι, το YAML σημαίνει το ίδιο ανεξάρτητα από το ποιος αναλυτής το διαβάζει. Οι συμβολοσειρές πολλών γραμμών γράφονται έτσι ώστε να διατηρούνται οι αλλαγές γραμμών.
Οι αριθμοί, οι τιμές boolean και το null του JSON αντιστοιχίζονται απευθείας σε YAML. Για την αντίστροφη κατεύθυνση χρησιμοποιήστε το YAML σε JSON ή τον μετατροπέα δύο κατευθύνσεων JSON ⇄ YAML.
Παραδείγματα
Manifest Kubernetes
Επικολλήστε το JSON από την εντολή kubectl get -o json και λάβετε το ίδιο αντικείμενο ως YAML για επεξεργασία και εφαρμογή.
Τιμές που πρέπει να παραμείνουν συμβολοσειρές
Το {"enabled": "on", "mode": "0755"} γίνεται enabled: "on" και mode: "0755", ώστε κανένα από τα δύο να μη μετατραπεί σε boolean ή οκταδικό αριθμό.
Συχνές ερωτήσεις
Γιατί ορισμένες τιμές είναι σε εισαγωγικά;
Επειδή χωρίς εισαγωγικά ορισμένοι αναλυτές YAML θα τις διάβαζαν ως τιμές boolean, αριθμούς ή ημερομηνίες. Τα εισαγωγικά τις διατηρούν ως συμβολοσειρές.
Μπορώ να μετατρέψω JSON με σχόλια;
Όχι. Τα σχόλια δεν είναι έγκυρο JSON· το μήνυμα σφάλματος δείχνει πού βρίσκεται το σχόλιο, ώστε να το αφαιρέσετε.
Διατηρείται η σειρά των κλειδιών;
Ναι. Τα κλειδιά γράφονται με την ίδια σειρά όπως στο JSON.
Απόρρητο
Η μετατροπή εκτελείται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας. Τα JSON και YAML σας δεν μεταφορτώνονται ούτε αποθηκεύονται.