Конвертер JSON в YAML онлайн
JSON в YAML (выбор отступа, сортировка ключей, позиция ошибки)
Работает в браузере · файлы никуда не загружаются
Что это за инструмент
YAML — формат конфигурации, который удобно читать и править человеку. Он используется в манифестах Kubernetes, GitHub Actions, Docker Compose и многих других инструментах. Если у вас есть ответ API или конфиг в JSON, а нужен YAML, просто вставьте его сюда — результат появится сразу.
Как пользоваться
- Вставьте JSON в поле ввода.
- Выберите отступ в 2 или 4 пробела. Для YAML принято использовать 2.
- Включите сортировку ключей, если нужен алфавитный порядок на всех уровнях.
- Скопируйте результат. Если в JSON есть ошибка, будут показаны строка и столбец.
Как это работает
- На входе строгий JSON по RFC 8259. Вывод формирует библиотека js-yaml в форме, совместимой с core-схемой YAML 1.2.
- Строка, которую можно прочитать как другой тип, например
true,null,123или007, автоматически берется в кавычки, поэтому при обратном преобразовании типы не меняются. - Кириллица, иероглифы и эмодзи записываются как есть, без экранирования.
- Автоматический перенос строк выключен, а значение, встречающееся несколько раз, каждый раз записывается полностью, без якорей и ссылок (
&,*). - Пустой массив записывается как
[], пустой объект — как{}. Скаляр верхнего уровня, например строка или число, тоже преобразуется. - Целые числа больше 2^53 округляются при чтении ввода, поэтому выводится предупреждение.
Примеры
Ввод:
{"name":"app","ports":[80,443],"owner":{"имя":"Иван"},"debug":false,"version":"1.0"}
Результат:
name: app
ports:
- 80
- 443
owner:
имя: Иван
debug: false
version: '1.0'
Частые вопросы
Если преобразовать YAML обратно в JSON, данные будут теми же?
Структура и значения вернутся без изменений. Строки, которые можно принять за другой тип, например "true" или "123", берутся в кавычки и остаются строками. Порядок ключей сохраняется, если не включена сортировка.
Длинные строки переносятся на несколько строк?
Нет. Автоматический перенос отключен, поэтому строка остается на одной линии и не разбивается. Строка с переводами строк может быть записана как блочный скаляр YAML.
Как сообщается об ошибках в JSON?
Показываются строка и столбец первого символа, нарушающего синтаксис. То, что JSON не допускает, например висячие запятые и комментарии, тоже считается ошибкой.
Безопасны ли очень большие целые числа?
Ввод читается средствами JavaScript, поэтому целые числа больше 9007199254740991 (2^53-1) округляются. В таком случае появляется предупреждение — записывайте такие числа строками.