TanodTools
RU

Конвертер JSON в YAML

Вставьте JSON и получите чистый YAML; сложные строки берутся в кавычки, чтобы сохранить смысл.

Работает полностью в браузере

Отступ
Параметры

Ввод до 10 МБ. Преобразуются только данные; в JSON нет комментариев, поэтому в YAML их не будет.

Как преобразовать JSON в YAML

  1. Вставьте JSON в поле или нажмите Вставить пример.
  2. Выберите отступ в 2 или 4 пробела и включите «Сортировать ключи», чтобы все словари шли по алфавиту.
  3. Если JSON некорректен, вы увидите строку и столбец. Иначе скопируйте YAML или скачайте его файлом .yaml.

Как превратить JSON в читаемый YAML

YAML — во многом более удобный для человека способ записи тех же данных, что хранит JSON. Скобки и кавычки уступают место отступам и обычным словам, поэтому на нём обычно пишут конфигурации Kubernetes, Compose и систем CI. Если исходить из JSON, например из ответа API или сгенерированного манифеста, преобразование механическое, но одну деталь нужно учесть: YAML определяет тип значения по его виду.

В YAML голое true — логическое значение, null — пустое значение, а 1.0 — число. Строка JSON, похожая на одно из них, например "null", "1.0" или "0x1F", должна быть в YAML взята в кавычки, иначе при чтении изменится её тип. Конвертер берёт в кавычки именно такие строки, а также пустые строки и текст, начинающийся с символов, имеющих в YAML особый смысл, после чего проверяет результат, читая его обратно.

Многострочный текст становится литеральным блоком, который читается гораздо легче, чем длинная строка с экранированием \n. Пустые объекты и массивы записываются как {} и []. Поскольку в JSON нет комментариев, YAML начинается без них; свои комментарии можно добавить потом.

Советы

  • Чтобы вернуться из YAML в JSON, используйте «YAML в JSON».
  • Если не уверены, что JSON корректен, сначала проверьте и отформатируйте его в инструменте «Форматирование и проверка JSON».
  • Нужна таблица? «JSON в CSV» разворачивает массив объектов в плоский вид.

Вопросы и ответы

Мой JSON загружается на сервер?

Нет. Он разбирается и преобразуется кодом, который работает в вашем браузере, поэтому вставленное не покидает ваше устройство.

Почему некоторые строки в кавычках?

Простое yes, null, 1.0, 012 или 0x1F при обратном чтении было бы воспринято как логическое значение, null или число, а не как исходная строка. Конвертер берёт такие строки (и пустые строки) в кавычки, чтобы YAML означал то же, что и JSON.

Как убедиться, что YAML соответствует JSON?

После преобразования страница читает YAML обратно парсером YAML 1.2 и сравнивает его с вашими данными. Если они хоть раз различаются, над результатом появляется уведомление.

Как записываются многострочные строки?

Строка с переводами строк записывается как блочный скаляр (|), что сохраняет читаемость. Однострочный текст остаётся в одной строке, если не включён перенос.

Меняется ли порядок моих ключей?

Ключи сохраняют порядок, за одним исключением, свойственным JavaScript: ключи, являющиеся целыми числами, например «1», перечисляются первыми в числовом порядке. Включите «Сортировать ключи», чтобы упорядочить все уровни по алфавиту.

Что с большими числами?

Целые числа больше 9 007 199 254 740 991 записываются ровно так, как введены, без округления. Десятичные числа с более чем примерно 17 значащими цифрами округляются до ближайшего значения, которое может хранить число типа double.