Конвертация JSON в CSV и CSV в JSON: нормализация плоских и вложенных структур
Конвертер JSON в CSV и CSV в JSON — утилита преобразования структурированных данных для дата-инженеров, маркетологов и аналитиков. Инструмент связывает мир вложенных иерархических структур веб-API (JSON) с форматом двумерных реляционных электронных таблиц (CSV / Excel).
Модуль поддерживает автоматическое выравнивание вложенных объектов через точечную нотацию (`user.address.city`), корректную обработку массивов, кастомные разделители (запятая, точка с запятой, табуляция) и кодировку UTF-8 с BOM. Конвертация массивов данных происходит на 100% на клиенте.
Архитектура и математическая формула
Сплощение объекта (Flattening): { user: { id: 1 } } -> { 'user.id': 1 } -> CSV: 'user.id'\n1
Рекурсивный обход узлов дерева формирует плоский заголовок колонок, после чего каждая запись сериализуется в строку с экранированием кавычек по RFC 4180.
Лучшие практики и ключевые рекомендации
- Используйте точку с запятой (`;`) для открытия файлов в русском Excel: В русскоязычной локали Windows разделителем по умолчанию в Excel является точка с запятой (так как запятая зарезервирована для десятичных дробей).
- Добавляйте маркер UTF-8 BOM для корректного отображения кириллицы: Без маркера Byte Order Mark (BOM) программа Microsoft Excel открывает файлы CSV с русскими буквами в кодировке Windows-1251, превращая текст в нечитаемые «кракозябры».
- Экранируйте поля, содержащие запятые и переносы строк: По стандарту RFC 4180 любое текстовое поле, содержащее разделитель, кавычку или символ перевода строки, обязано оборачиваться в двойные кавычки, а внутренние кавычки удваиваться (`""`).
- Контролируйте однородность структуры объектов JSON: Если объекты в массиве имеют разный состав ключей, генератор должен создать объединение всех уникальных заголовков, заполняя пустые значения пустыми ячейками.