CSV в JSON
Вставьте или загрузите CSV-файл и мгновенно получите чистый JSON — заголовки становятся ключами объекта, числа и логические значения определяются автоматически.
Нажмите, чтобы выбрать файл .csv, или перетащите его сюда
Или вставьте текст CSV прямо в поле ниже.
Вывод
Как это работает
Файлы читаются с помощью API браузера FileReader и разбираются написанным вручную однопроходным парсером, следующим правилам RFC 4180: он проходит по тексту символ за символом, отслеживая, находится ли он внутри поля в кавычках. Именно в этом ошибаются наивные конвертеры, разделяющие по запятым: внутри кавычек запятые и даже переносы строк принадлежат ячейке, а удвоенная кавычка ("") — это буквальный символ кавычки. Автоопределение разделителя прагматично, а не «умно»: оно считает запятые, точки с запятой и табуляции в первой строке и выбирает победителя, что корректно обрабатывает CSV-файлы с разделителем точка с запятой, которые создают европейские экспорты из Excel.
Приведение типов — это то место, куда стоит внимательно посмотреть в результате. Значения, похожие на целые или десятичные числа, становятся числами JSON, а true/false — логическими значениями. Обычно это именно то, что нужно, но это означает, что значения с ведущими нулями, например почтовые индексы или добавочные номера телефонов, выходят как числа: 01234 превращается в 1234. Если столбец является идентификатором, а не количеством, проверьте его после конвертации. Отсутствующие завершающие ячейки в коротких строках становятся пустыми строками, а не приводят к сбою строки.
Разбор, приведение типов и даже скачивание .json (построенное из Blob в памяти) — всё это происходит внутри JavaScript этой страницы. Откройте вкладку Network в DevTools во время конвертации: ни один запрос не передаёт ваши данные, поэтому списки клиентов и экспортированные файлы никогда не покидают ваш компьютер.