YamlBox

Конвертеры данных · 6 минута чтения

Excel до JSON: превращение книг в структурированные данные

Преобразование Excel в JSON обычно является первым шагом на пути внесения данных электронной таблицы в приложение, тестовое приспособление или на веб-сайт, управляемый электронными таблицами. Самое неудобное заключается в том, что рабочая книга представляет собой богатый документ: формулы, форматы, несколько листов, даты, хранящиеся в виде чисел, а JSON – это простые данные. Понимание четырех разрывов между ними позволяет избежать путаницы при отладке.

Обновлено

Что на самом деле представляет собой файл XLSX

Файл `.xlsx` представляет собой ZIP-архив, состоящий из XML частей: листов, общих строк, стилей и связей. Поэтому конвертер может прочитать его прямо в браузере без установки программного обеспечения — он разархивирует, парсит лист XML и перестраивает строки как объекты. Это также объясняет, почему `.xls` (более старый двоичный формат) нуждается в другом пути кода и почему при экспорте `.csv` теряется все, кроме значений.

Заголовки становятся ключами, а формулы — значениями.

Как и в случае с CSV, первая непустая строка содержит имена свойств. Формулы представляют собой интересный случай: ячейка, содержащая `=B2*C2`, содержит и формулу, и кэшированный результат, а преобразователь считывает кэшированное значение, потому что именно оно отображается в книге. Сначала откройте файл в Excel, если формулы были рассчитаны где-то еще — книга, сохраненная с помощью инструмента, который никогда их не вычислял, может содержать устаревшие или отсутствующие кэши.

Ловушка для свиданий

Excel хранит даты в виде серийных номеров — дней с 1899-12-30 — и отображаемое значение зависит от числового формата ячейки, который находится в другой части XML. Конвертер, который игнорирует форматы, выдает вам `45231` за десятое ноября, а конвертер, который доверяет форматам, может ошибочно интерпретировать книгу простых чисел как даты. Это самая распространенная жалоба Excel на JSON, поэтому проверьте одну известную дату в выходных данных по таблице, прежде чем что-либо переносить.

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

Очистите сетку перед преобразованием

  • Удалите объединенные ячейки — они сопоставляются с одним значением и набором пробелов, чего редко ожидает потребитель.
  • Удалите строки заголовков и строки итогов, чтобы таблица начиналась с заголовка и заканчивалась последней строкой данных.
  • Сделайте заголовки уникальными и свободными от знаков препинания; они становятся именами свойств.
  • Нормализуйте пустые ячейки намеренно: пустая ячейка означает отсутствие, неизвестность или ноль, а JSON отличает все три.

Аргумент конфиденциальности в пользу локального действия

Электронные таблицы — это место, где организации хранят заработную плату, цены, списки клиентов и прогнозы. Загрузка книги на конверсионный веб-сайт для возврата JSON — это решение по обработке данных, которое никто не должен принимать: преобразователь YamlBox Excel в JSON анализирует XLSX в браузере, поэтому файл никогда не покидает компьютер и работает при отключенной сети.

Excel в JSON — часто задаваемые вопросы

Почему мои даты в Excel отображаются в виде чисел типа 45231?

Excel хранит даты как дни, начиная с эпохи 1900 года, и сохраняет формат отображения отдельно. Если преобразователь не может определить формат ячейки, он возвращает необработанный серийный номер. Отформатируйте столбец как дату ISO на листе или преобразуйте число самостоятельно в эпоху 1899-12-30.

Могу ли я преобразовать книгу с несколькими листами?

Да. Решите, хотите ли вы один лист или все из них: вывод на нескольких листах обычно представляет собой объект JSON с ключом по имени листа, а вывод на одном листе представляет собой массив объектов-строк. Справочные листы — частая ошибка при конвертации только первого.

При преобразовании XLSX в JSON моя таблица будет загружена куда-нибудь?

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

Инструменты, упомянутые в этом посте

Просмотрите полный список инструментов 19

Еще статьи для чтения

Все 19 публикации →