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

Вставьте YAML и получите те же данные в виде JSON, которые можно скопировать или скачать как data.json. Ошибка в YAML показывается с указанием строки и столбца, где она найдена.

Бесплатно Работает в браузере Проверено вторник, 10 ноября 2026 г.

Текст YAML 1.2. Допускается несколько документов, разделённых строкой ---. До 2 000 000 символов.

Результат

Корректность — Корректный YAML или строка и столбец первой ошибки.
Текст JSON

Этот инструмент работает в вашем браузере. То, что вы вводите, нам не отправляется.

Как пользоваться

  1. Вставьте YAML в поле Текст YAML.
  2. Прочитайте Корректность. Если там указаны строка и столбец, исправьте YAML в этом месте.
  3. Если YAML содержит несколько документов, Текст JSON будет одним массивом с элементом для каждого документа.
  4. Скопируйте Текст JSON или скачайте его как data.json.

Как читается YAML

YAML 1.2 описан спецификацией, которая задаёт, как читаются отступы, имена, списки, текст в кавычках и блоки. Страница читает текст библиотекой yaml, которая следует этой спецификации, а затем записывает результат в JSON.

  • Словарь становится объектом JSON, и его имена идут в том порядке, в котором записаны. Последовательность становится массивом. Слова true, false и null становятся логическими значениями и null, а текст в кавычках остаётся текстом.
  • Целое число сохраняет каждую цифру. Повторяющееся имя в одном словаре считается ошибкой, потому что JSON сохранил бы только одно из значений.
  • У значения вроде .inf или .nan нет вида JSON, поэтому оно отклоняется, а не записывается как null или как изменённое число.

Несколько документов и псевдонимы

Файл YAML может содержать несколько документов, каждый из которых начинается со строки ---. Преобразователь читает их все. Один документ даёт одно значение JSON; несколько дают массив JSON с элементом на каждый документ, в порядке следования. Псевдоним (*name) заменяется значением, на которое он указывает. Файл, который повторяет псевдоним так часто, что результат раздулся бы до огромного размера, отклоняется.

Пример: файл из двух документов

Пример 2.7 спецификации YAML 1.2, «Два документа в потоке», содержит список лучших хоумранщиков, затем строку ---, затем список команд. После преобразования получается массив JSON из двух массивов, по одному на каждый документ.

Первый массив содержит трёх игроков, второй — две команды, в том порядке, в котором они записаны.

Документ Элемент JSON
1 ["Mark McGwire", "Sammy Sosa", "Ken Griffey"]
2 ["Chicago Cubs", "St Louis Cardinals"]

Частые вопросы

Почему ошибка показывает строку и столбец?

Позиция — это место, где парсер заметил проблему, счёт идёт с единицы. Сама ошибка может находиться немного раньше, например неверный отступ в строке перед указанной.

Что значит замечание о нескольких документах?

Каждая строка, которая начинается с ---, открывает новый документ. Тогда JSON — массив с одним элементом на каждый документ, в порядке следования. Если вы имели в виду один документ, удалите лишнюю строку ---.

Почему .inf или .nan дают ошибку?

В JSON нет бесконечности и значения «не число», поэтому такое значение нельзя записать без изменения. Замените его числом или текстом и преобразуйте YAML заново.

Меняются ли числа при преобразовании?

Целые числа сохраняют каждую цифру, поэтому 12345678901234567890 записывается точно. Дробное число записывается ближайшим числом JavaScript, так что 1.50 становится 1.5 с тем же значением.

Сохраняется ли в JSON порядок имён?

Да. Имена идут в том порядке, в котором записаны в YAML. Объект JavaScript переставил бы имя вроде 2024 в начало, а этот преобразователь так не делает.

Загружается ли мой YAML куда-нибудь?

Нет. Преобразование выполняется в вашем браузере, и ничего из вставленного не отправляется на наш сервер.

Источники

Цифры и текст в последний раз проверены вторник, 10 ноября 2026 г..

Мы используем необходимые cookie, чтобы сайт работал. С вашего согласия Google также использует рекламные cookie, чтобы показывать персонализированную рекламу. Если вы откажетесь, реклама всё равно будет показываться, но не будет персонализированной.