Конвертер JSON, YAML и CSV
Вставьте данные — результат появится сразу. Формат определяется сам, ошибка показывается со строкой, столбцом и фрагментом, а дерево помогает найти нужный путь. Всё считается на вашем устройстве.
Бесплатно, без регистрации
Ввод
Ввод до 200 КБ и настройки сохраняются только в этом браузере.
Настройки ввода
Результат · YAML
Конвертирую…
Настройки вывода
Например: users[0].name, users[*].id, $.owner — результат покажет только найденное.
Как работает конвертер
Определение формата
Начинается с { или [ — это JSON. Строки с одинаковым числом полей через запятую, точку с запятой, табуляцию или | — таблица CSV/TSV. Остальное читается как YAML. Формат можно выбрать вручную.
Разбор с точным местом ошибки
JSON разбирается собственным разборщиком по RFC 8259: при ошибке видно строку, столбец, фрагмент с указателем ^ и понятное объяснение. YAML — библиотекой yaml (версии 1.2 и 1.1), CSV — по RFC 4180 с кавычками и переводами строк внутри полей.
Преобразование
Вложенные объекты при выгрузке в CSV разворачиваются в колонки user.name и tags[0] и собираются обратно при чтении. Можно отсортировать ключи, сменить отступ, минифицировать, экранировать не-ASCII или получить типы TypeScript по образцу.
Дерево и фильтр
Дерево показывает структуру; клик по ключу копирует путь вида $.users[0].name. Фильтр по пути (users[*].id, $.owner) оставляет в результате только найденное.
Стандарты и ловушки
JSON — RFC 8259; YAML — спецификации 1.2.2 и 1.1; CSV — RFC 4180; TSV — табуляция без кавычек внутри полей (кавычки ставятся, если в значении есть табуляция или перевод строки).
Самая частая ловушка YAML — разница версий. Kubernetes, Ansible и PyYAML во многих местах читают YAML по правилам 1.1, где «no» — это false, а «0755» — восьмеричное число. Инструмент по умолчанию читает YAML 1.2 и предупреждает о каждом таком значении с номером строки; при выводе YAML такие строки берутся в кавычки.
no
- YAML 1.2
- "no"
- YAML 1.1
- false
yes
- YAML 1.2
- "yes"
- YAML 1.1
- true
on
- YAML 1.2
- "on"
- YAML 1.1
- true
off
- YAML 1.2
- "off"
- YAML 1.1
- false
0755
- YAML 1.2
- 755
- YAML 1.1
- 493
1:30
- YAML 1.2
- "1:30"
- YAML 1.1
- 90
2026-10-14
- YAML 1.2
- "2026-10-14"
- YAML 1.1
- "2026-10-14T00:00:00.000Z"
JSON
- Файл
- .json
- MIME
- application/json
- Что умеет
- RFC 8259; отступ 2/4/табуляция, минификация, сортировка, \uXXXX
YAML
- Файл
- .yaml
- MIME
- application/yaml
- Что умеет
- YAML 1.2; документы через ---, кавычки для yes/no/on/off
CSV
- Файл
- .csv / .tsv
- MIME
- text/csv
- Что умеет
- RFC 4180; пути колонок, стратегии массивов, защита от формул
TypeScript
- Файл
- .ts
- MIME
- text/typescript
- Что умеет
- interface или type по образцу данных
Query string
- Файл
- .txt
- MIME
- text/plain
- Что умеет
- a[b]=1&t[0]=x, кодирование encodeURIComponent
empty
- Сообщение
- Пустой ввод.
unexpected-end
- Сообщение
- Данные оборвались: не хватает закрывающей скобки, кавычки или значения.
unexpected-char
- Сообщение
- Неожиданный символ: здесь ожидалось значение (строка в двойных кавычках, число, true, false, null, объект или массив).
unterminated-string
- Сообщение
- Строка не закрыта: нет парной кавычки до конца строки.
bad-escape
- Сообщение
- Недопустимая escape-последовательность. В JSON разрешены \" \\ \/ \b \f \n \r \t и \uXXXX.
control-char
- Сообщение
- Управляющий символ внутри строки: табуляцию и переводы строк нужно записывать как \t и \n.
bad-number
- Сообщение
- Неверное число: в JSON нет ведущих нулей, «+», точки без цифр, NaN и Infinity.
trailing-comma
- Сообщение
- Висячая запятая перед закрывающей скобкой — в строгом JSON так нельзя.
comment
- Сообщение
- Комментарии в строгом JSON запрещены.
single-quote
- Сообщение
- Строки в JSON пишутся в двойных кавычках.
unquoted-key
- Сообщение
- Ключ без кавычек: в JSON ключи — строки в двойных кавычках.
expected-colon
- Сообщение
- После ключа ожидается двоеточие.
expected-comma
- Сообщение
- Ожидается запятая или закрывающая скобка — возможно, пропущена запятая между элементами.
expected-key
- Сообщение
- Ожидается ключ в двойных кавычках.
trailing-data
- Сообщение
- После значения есть лишние данные — JSON-документ содержит одно значение верхнего уровня.
too-deep
- Сообщение
- Слишком глубокая вложенность (больше 1000 уровней).
Ограничения
- Мягкий JSON — не полный JSON5: принимаются только комментарии, висячие запятые, строки в одинарных кавычках и ключи без кавычек. Шестнадцатеричные числа, NaN и Infinity остаются ошибкой.
- Целые числа больше 2^53 теряют точность (так устроены числа JavaScript) — инструмент предупреждает о каждом. Ключи-числа («10», «2») в объектах идут первыми — это порядок свойств JavaScript.
- Повторяющиеся ключи: в JSON остаётся последнее значение с предупреждением, в YAML это ошибка (спецификация требует уникальных ключей).
- В CSV пустая ячейка и null неразличимы; пустые массивы в режиме колонок tags[0] не создают колонок — выберите «JSON в ячейке», чтобы их сохранить. Ключи с точкой в имени при обратном чтении станут вложенностью.
- Типы TypeScript выводятся по образцу: значения, которых нет в данных, тип не увидит. Комментарии YAML и порядок форматирования исходника при конвертации не сохраняются.
- Ввод до 10 МБ; показывается до 1 МБ результата (полностью — копированием и скачиванием), подсветка — до 100 КБ.
Приватность
- Данные разбираются в вашем браузере, в фоновом потоке этой же страницы; ни ввод, ни результат никуда не отправляются, адрес страницы не меняется.
- Ввод до 200 КБ и настройки хранятся только в этом браузере (localStorage), чтобы черновик пережил перезагрузку; больший ввод живёт только в памяти вкладки. «Сбросить всё» удаляет данные.
- В аналитику уходит только факт копирования или скачивания и пара форматов (например, json → yaml) — без содержимого.
- Результат уходит к нам, только если вы сами оставите заявку и не снимете галочку «Приложить результат» — что именно уйдёт, видно в форме. Файлы и изображения с заявкой не отправляются.
- В сводке для заявки — только форматы, размеры, число ключей и строк, место ошибки и число предупреждений; сами данные, результат, имена ключей и путь фильтра в неё не попадают.
Похожие инструменты
Все инструменты · 40
Сжатие картинок в WebP и AVIFПеретащите картинки — WebP, AVIF или JPEG по качеству или целевому размеру в КБ, шторка «до/после» 1:1, srcset и <picture>, пакетный ZIP. Всё в браузере.
Предпросмотр ссылок (Open Graph)Вставьте HTML или заполните поля — и посмотрите, как ссылка выглядит в Telegram, WhatsApp, VK, Facebook, X, LinkedIn и Slack. Проверка og:image, длины текста и twitter:card, готовый блок <head>.
Тестер регулярных выраженийПодсветка совпадений и групп по мере ввода, замена, разбор выражения по частям, библиотека готовых шаблонов и защита от зависания.
Cron: расписание по-человеческиCron-выражение ↔ понятный текст, ближайшие запуски в вашем часовом поясе, конструктор расписания и варианты для Linux, Quartz, GitHub Actions и Kubernetes.
Base64, хеши, UUID и ULIDBase64/base64url, Base32, HEX, URL и HTML в обе стороны, хеши текста и файлов любого размера (SHA-256, SHA-3, BLAKE3, MD5, CRC-32), HMAC, сверка контрольных сумм, генерация и разбор UUID v4/v7, ULID и NanoID.Данные переезжают между системами?
Спроектируем интеграцию и формат обмена, напишем импорт и выгрузку с проверками. Объём и стоимость — после брифа.
- Первый короткий разговор бесплатный — выбираем формат работы
- NDA — по вашему или нашему шаблону
- Стоимость — после брифа и согласования объёма