tooly

Конвертировать JSON в CSV онлайн

Вставьте массив JSON и получите чистый CSV для Excel, Google Таблиц или импорта в базу данных — вложенные поля разворачиваются, кавычки экранируются, ничего не загружается.

Всё работает в браузере — данные никуда не отправляются

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

  1. 1

    Вставьте JSON — лучше всего подходит массив объектов.

  2. 2

    Выберите разделитель: запятая для большинства инструментов, точка с запятой для Excel в европейской локали.

  3. 3

    Скопируйте CSV или скачайте файлом.

От ответа API к таблице

JSON — родной формат веб-API, но людям, которым нужны данные, привычнее электронные таблицы. Типичные случаи: список заказов из API магазина, который бухгалтер хочет видеть в Excel, записи пользователей, выгруженные из NoSQL-базы для быстрой сводной таблицы, события аналитики для фильтрации в Google Таблицах или пачка записей для массового импорта в CRM, которая принимает только CSV. Кроме того, CSV проще всего сравнивать, сортировать и прогонять через grep в командной строке.

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

Как строится таблица

Строки и столбцы выводятся из самих данных, схема не нужна:

  • Столбцы — объединение всех ключей в порядке первого появления. Если в первой записи есть id и name, а в десятой появляется ещё и email, заголовок заканчивается на email, а у первых девяти строк эта ячейка остаётся пустой.
  • Вложенные объекты разворачиваются через точки, так что {"customer": {"address": {"city": "Lyon"}}} даёт столбец customer.address.city. Глубина вложенности может быть любой.
  • Одиночный объект вместо массива воспринимается как таблица из одной строки.
  • Простые значения в массиве, например [1, 2, 3] или список строк, попадают в один столбец с именем value.
  • null становится пустой ячейкой, а булевы значения записываются как true и false.

У пустого вложенного объекта вроде "meta": {} нет полей для разворачивания, поэтому столбца он не даёт вовсе.

Массивы внутри записей

В таблицах нет понятия списка внутри ячейки, поэтому массив вроде "tags": ["red", "sale"] записывается в одну ячейку своим JSON-текстом — ["red","sale"]. Так данные сохраняются без потерь: позже их можно разобрать обратно или разбить формулой в таблице.

Если на самом деле нужна одна строка на каждый элемент массива — например, строка на каждую позицию заказа, а не на заказ, — сначала преобразуйте данные. В большинстве скриптовых языков это одна строчка с map по родительским записям, копирующая ID родителя в каждую дочернюю. Если затем передать преобразованный массив конвертеру, получится чистый, полностью табличный результат.

Кавычки и разделители

Ячейка берётся в двойные кавычки, только когда это необходимо: если она содержит разделитель, двойную кавычку или перенос строки. Кавычки внутри значения удваиваются, как требует RFC 4180, так что 6" pipe записывается как "6"" pipe". Все остальные значения пишутся без кавычек, что делает файл компактным и читаемым.

Разделитель важнее всего, когда файл открывают двойным щелчком в Excel:

  • Запятая — стандарт для Google Таблиц, LibreOffice, баз данных, модуля csv в Python и почти любого инструмента импорта.
  • Точка с запятой — то, что ожидает Excel, если в Windows выбран региональный формат, где десятичным разделителем служит запятая, а это большая часть континентальной Европы и Латинская Америка. Если в таких настройках открыть файл с запятыми, каждая строка окажется в столбце A.

Если сомневаетесь, используйте запятую и открывайте файл через импорт Excel «Данные» → «Из текстового/CSV-файла», где разделитель можно выбрать явно.

Как аккуратно перенести данные в Excel

Некоторые проблемы возникают уже после конвертации, внутри таблицы, и их легко предотвратить:

  • Буквы с диакритикой превращаются в символы. Файл записан в UTF-8 без метки порядка байтов, а некоторые версии Excel при двойном щелчке угадывают устаревшую кодировку. Используйте импорт «Из текстового/CSV-файла» и выберите UTF-8 или откройте файл в Google Таблицах.
  • Ведущие нули и длинные ID портятся. Excel превращает 00042 в 42, а числа из 16 и более цифр — в экспоненциальную запись. В диалоге импорта задайте для таких столбцов тип «Текстовый».
  • Даты меняют формат. Строки ISO вроде 2026-03-01T10:00:00Z могут быть частично интерпретированы. Импортируйте столбец как текст, если нужно исходное значение.

Учтите, что числа больше 9 007 199 254 740 991 теряют точность уже при разборе JSON в браузере, поэтому храните очень большие ID в исходном JSON строками, если они должны сохраниться в точности.

Сначала проверьте входные данные

Если конвертер сообщает о некорректном JSON, вставьте данные в JSON-форматировщик — он покажет точную строку и позицию проблемы. Данные из лог-файла часто записаны в формате JSON Lines — по одному объекту на строку без внешних скобок; оберните их в [ и ] и добавьте запятые между строками, чтобы получился валидный массив. Обратная конвертация доступна в инструменте CSV в JSON. Вся обработка идёт на странице, так что ничего из вставленного никуда не отправляется.

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

Как обрабатываются вложенные объекты?

Они разворачиваются в колонки с точкой в названии, например user.address.city. Массивы остаются в одной ячейке как JSON-строка.

Что если у объектов разные ключи?

Заголовок — объединение всех ключей; недостающие значения остаются пустыми.

Почему Excel помещает всё в одну колонку?

Excel во многих европейских локалях ожидает точку с запятой. Выберите разделитель ; и скачайте заново.

Мои данные загружаются на сервер?

Нет. Конвертация происходит в браузере.

Есть ограничение по размеру?

Файлы на несколько мегабайт конвертируются мгновенно; очень большие ограничены только памятью браузера.

Похожие инструменты