Конвертер CSV ↔ JSON / XML
CSV в JSON и XML, JSON и XML в CSV: разделитель, кавычки, BOM для Excel, вложенные поля и ошибки со строкой.
Данные обрабатываются в браузере и никуда не отправляются
Ввод
Результат
Здесь появится результат
Введите данные слева - результат появится сразу
Как пользоваться
Выберите направление и вставьте данные - результат появляется сразу. Разделитель CSV определяется автоматически (запятая, точка с запятой, табуляция, вертикальная черта), кавычки и переносы строк внутри ячеек разбираются по стандарту RFC 4180. При конвертации в CSV вложенные объекты разворачиваются в колонки вида a.b, а для Excel можно добавить BOM, чтобы кириллица открылась без «кракозябр».
Если в строках разное число значений, дубли и пустые названия колонок, формулы в ячейках и другие неочевидные вещи - инструмент не молчит, а предупреждает: в результате такие места выглядят аккуратно, но в данных могут оказаться сюрпризы.
Частые ошибки
Вот что чаще всего идёт не так с CSV:
Excel открывает кириллицу кракозябрами
Excel считает файл без BOM в старой кодировке. Включите «BOM для Excel», и UTF-8 откроется правильно. Для импорта в другие системы BOM обычно не нужен и даже мешает.
Разделитель - запятая или точка с запятой
В русской локали Excel сохраняет CSV с точкой с запятой, потому что запятая - десятичный разделитель. Автоопределение справляется, но при смешанных данных выберите разделитель вручную.
Ведущие нули и длинные числа
Телефон 0791234 или артикул 007 в режиме «Числа и true/false» остаются строками - иначе потеряются нули. Числа длиннее 15 цифр тоже остаются строками: JavaScript теряет их точность.
Кавычка внутри значения
Значение с запятой, кавычкой или переносом строки нужно заключить в кавычки, а кавычку внутри удвоить: "Он сказал ""да""". Одиночная кавычка посреди значения - ошибка формата.
Вложенные данные не помещаются в таблицу
CSV плоский: вложенный объект разворачивается в колонки a.b, а массив записывается в ячейку как JSON-строка. Если строки разной структуры, колонки объединяются и пропуски остаются пустыми.
Формулы в ячейках (CSV-инъекция)
Значение, которое начинается с =, +, - или @, Excel выполнит как формулу. Если вы отдаёте пользователям файл с чужими данными, такие значения нужно экранировать - инструмент покажет предупреждение.
Частые вопросы
Отправляются ли мои данные на сервер?
Нет - 100%. Сайт целиком статический, у него нет серверной части. Разбор и конвертация выполняются в вашем браузере.
Какой формат XML получается из CSV?
Корневой элемент (по умолчанию rows), внутри - по элементу row на каждую строку, а в нём - по элементу на каждую колонку. Названия корня и строки можно изменить. Если название колонки нельзя использовать как имя XML-элемента, оно исправляется с предупреждением.
Как из XML получается CSV?
Строками становятся повторяющиеся элементы под корнем (самый частый), колонками - их атрибуты (@имя) и вложенные элементы (вложенные раскрываются как a.b). Остальные элементы пропускаются, о чём предупреждает инструмент.
Почему числа остаются строками?
По умолчанию все значения остаются строками, потому что CSV не хранит типы, а угадывание портит данные (нули, длинные идентификаторы). Режим «Числа и true/false» превращает только безопасные значения.
Что такое BOM и когда он нужен?
BOM - невидимый маркер UTF-8 в начале файла. Excel по нему понимает кодировку. Для файлов, которые читают программы и API, BOM лучше не добавлять.
Можно ли загрузить большой файл?
Да, до 5 МБ. Конвертация происходит в вашем браузере, поэтому на очень больших файлах возможна короткая пауза.
Похожие инструменты
Курс «Проектирование API и интеграций»
Глубокое погружение в REST, gRPC, SOAP, проектирование баз данных и брокеры сообщений (Kafka, RabbitMQ). Делегирование рутины нейросетям (ИИ). Перестанете бояться технических собеседований и начнете говорить с разработчиками на одном языке. Курс собран так, чтобы пробить зарплатный потолок и вырасти в грейде - ученики тому подтверждение.
Перейти к курсу на Stepik