+7 (495) 185-60-65
Сервисы

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

Переводит CSV в JSON и обратно прямо в браузере. Открывает файлы из Excel, понимает кавычки и любой разделитель, показывает предпросмотр таблицы.

К инструменту

Выгрузка из CRM пришла в CSV, а сервису на входе нужен JSON. Или наоборот: партнёр прислал ответ API, а вам надо открыть его таблицей и посмотреть, что там за поля. Обычно в этот момент зовут разработчика или мучают Excel, который на точке с запятой и кавычках рассыпает строки по столбцам.

Поле выше переводит одно в другое. Данные не загружаются на сервер, разбор идёт прямо у вас в браузере.

Когда это выручает

  • Ответ API надо посмотреть глазами.
  • Выгрузка из CRM или 1С с точкой с запятой открывается в таблице криво.
  • Сервис импорта принимает только массив JSON, а у вас на руках обычная таблица.
  • Надо быстро понять структуру чужого файла: какие в нём вообще колонки.

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

Отметьте согласие над формой, иначе поле остаётся неактивным, выберите направление, CSV → JSON или JSON → CSV, и вставьте данные. Результат появляется сразу. Файл можно не копировать: перетащите его в поле или нажмите «Открыть файл». Подойдут .csv, .tsv, .txt и .json до 20 МБ, направление выберется по расширению.

При разборе CSV разделитель определяется автоматически. Можно задать его руками: запятая, точка с запятой, таб или вертикальная черта. Галочки «Первая строка — заголовок», «Превращать числа в типы JSON» и «Пропускать пустые строки» включены сразу. Над результатом появляется короткий итог: сколько записей и столбцов получилось и что пришлось поправить по дороге. Под результатом показывается предпросмотр на двадцать строк, а забрать готовое можно кнопкой «Скопировать» или сохранить файлом через «Скачать».

Пример: запятая и кавычки внутри поля

Вставили три строки:

  • id,name,city
  • 1,"Иванов, Иван",Москва
  • 2,"ООО ""Ромашка""",Казань

На выходе массив из двух объектов. Запятая внутри кавычек осталась частью имени, удвоенные кавычки свернулись в одну. У первого объекта в поле name лежит Иванов, Иван, у второго ООО «Ромашка». Ключи взяты из первой строки.

Если в таблице есть числа, конвертер превратит их в числа JSON: 42 приедет как 42, а true как true. Но только там, где запись от этого не изменится. Артикул 007, телефон +79161234567, цена 1.50 и двадцатизначный ID останутся строками: числом они бы потеряли ноль, плюс или последние цифры. Нужны строки везде, снимите галочку «Превращать числа в типы JSON».

Что делать с результатом

При переводе в JSON получается массив объектов, где ключи взяты из первой строки. Снимете галочку, и на выходе будет массив массивов: удобно, когда шапки в файле нет.

Обратно работает похоже. Обычно в корне JSON лежит массив, и каждая его запись становится строкой таблицы. Ответы API часто заворачивают список в объект вида data со списком внутри: такой JSON конвертер разберёт сам и возьмёт самый длинный список объектов, а над результатом напишет, из какого ключа. Одиночный объект станет одной строкой. Заголовок таблицы собирается из всех ключей, которые встретились хотя бы раз, так что поле из одного объекта даст колонку и во всех остальных строках, а лишние клетки останутся пустыми. Вложенный объект запишется в ячейку строкой JSON, потому что плоская таблица дерево не хранит.

Чаще всего конвертация это середина пути, а не конец. Выгрузили заказы из CRM, привели к JSON, залили в сервис рассылок или в личный кабинет партнёра. Получили прайс поставщика в JSON, развернули в таблицу, проверили остатки глазами, отдали менеджеру. Пока такое случается раз в квартал, ручной прогон через поле выше дешевле любой разработки. Когда это повторяется каждый понедельник, дешевле уже настроить обмен и забыть про ручные шаги.

Кодировка и Excel

CSV из JSON по умолчанию собирается под русский Excel: разделитель «точка с запятой», метка BOM в начале скачанного файла и защита от формул. С BOM Excel на Windows открывает файл двойным кликом без кракозябр и сразу раскладывает по столбцам. Для Google Таблиц, скриптов и сервисов выберите запятую. Кнопка «Скопировать» отдаёт чистый текст без BOM.

Защита от формул ставит апостроф перед ячейками, которые начинаются с = + - @. Иначе Excel принял бы такую ячейку за формулу и выполнил её. Обычные отрицательные числа вроде -5 защита не трогает.

В обратную сторону тоже есть подвох: Excel в русской Windows сохраняет CSV в старой кодировке Windows-1251. Конвертер это замечает, перекодирует файл в UTF-8 и пишет об этом под кнопками. Если кракозябры приехали к вам уже в чужом тексте, их разбирает декодер кракозябр.

Строки в скачанном CSV разделяются парой CR и LF, как требует стандарт. Старые парсеры на этом не спотыкаются.

Сколько строк он потянет

Файл на 5 МБ, это около 80 тысяч строк, конвертируется меньше чем за секунду. Длинные вставки пересчитываются, когда вы перестали печатать, а не на каждую букву. Чтобы страница не тормозила, в поле результата видны первые 50 000 знаков, а кнопки «Скопировать» и «Скачать» отдают результат целиком. Большой открытый файл не выводится и в поле ввода: под кнопками об этом появится пометка.

Практическая граница получается такая. Открыть можно файл до 20 МБ. Всё, что больше, лучше порезать на части или поставить конвертацию на поток силами разработчика.

Данные не уходят с вашего компьютера

В выгрузке из CRM лежат имена, телефоны и суммы сделок. Нести такой файл на случайный конвертер не стоит: вы не знаете, кто его хранит и сколько.

Здесь нести некуда. Разбор написан на JavaScript и работает во вкладке. Текст не уходит на сервер, не пишется в логи и пропадает вместе со вкладкой. Открытый файл тоже читается прямо в браузере. Отметка согласия над формой держится, пока открыта вкладка.

О чём помнить

  • Автоопределение смотрит только первую строку и берёт символ, который встречается в ней чаще других. Если шапка набита запятыми внутри кавычек, выбор собьётся: задайте разделитель вручную.
  • Автоопределение работает только в сторону CSV → JSON. В обратную сторону по умолчанию стоит точка с запятой, для Google Таблиц выберите запятую.
  • Галочки про заголовок, типы и пустые строки видны только в режиме CSV → JSON. В обратную сторону шапка всегда собирается из ключей объектов.
  • Одинаковые имена колонок не теряются: из шапки вида id,id получатся ключи id и id_2, а над результатом появится пометка.
  • Пустая ячейка в шапке превращается в ключ по номеру столбца: column_2, column_5.
  • Строки с разным числом столбцов разбор не ломают. Чего не хватает, станет пустым значением. Лишние ячейки получат ключи по номеру столбца, например column_6. Сколько было таких строк, конвертер напишет над результатом.
  • Числа длиннее 15–16 значащих цифр JavaScript хранит неточно, поэтому при переводе JSON → CSV такие числа сохраняются текстом, цифра в цифру.
  • Кавычки внутри поля пишутся удвоением (""), а переносы строк внутри кавычек сохраняются как есть.
  • Ошибка в JSON даст сообщение с номером строки и символа. Типичные промахи конвертер называет прямо: запятая перед закрывающей скобкой, одинарные кавычки, ключ без кавычек, комментарий.
  • Нечётное число двойных кавычек в CSV значит, что какое-то поле не закрыто. Тогда весь хвост файла попал бы в одну ячейку, и конвертер об этом предупреждает.

Вставьте свою выгрузку и посмотрите на предпросмотр: он сразу покажет, ту ли структуру вы получили.

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

Данные загружаются на сервер для конвертации?

Нет. Разбор CSV и JSON и обратная сборка написаны на JavaScript и выполняются локально в браузере. Текст из поля не уходит на сервер и нигде не сохраняется, поэтому выгрузку с именами, телефонами и суммами сделок можно вставлять спокойно.

Что если в CSV разные строки содержат разное число столбцов?

Разбор это не ломает. Недостающие значения станут пустыми строками, лишние ячейки получат ключи по номеру столбца, например column_6. Над результатом появится пометка, в скольких строках число ячеек не совпало с заголовком.

Как определяется разделитель в режиме «автоопределение»?

Инструмент смотрит только первую строку и берёт символ, который встречается в ней чаще других: запятую, точку с запятой, таб или вертикальную черту. Автоопределение работает при разборе CSV. При сборке CSV из JSON по умолчанию стоит точка с запятой для русского Excel, а для Google Таблиц выберите запятую.

Что если JSON завёрнут в объект?

Конвертер разберёт и его. Ответы API часто выглядят как объект с ключом data или items, внутри которого лежит список. Инструмент возьмёт самый длинный список объектов и напишет, из какого ключа. Если в корне один объект без списков, он станет одной строкой таблицы.

Почему Excel открывает скачанный CSV кракозябрами?

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

Числа в JSON будут числами или строками?

Числами, если включена галочка «Превращать числа в типы JSON»: 42 станет 42, true станет true. Но только когда запись от этого не меняется. Артикул 007, телефон с плюсом, цена 1.50 и очень длинные ID останутся строками, чтобы не потерять ноль, плюс или цифры. Снимите галочку, и всё будет строками.

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

Внедрения

Статьи по теме

Заказать звонок