Конвертеры данных · 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 моя таблица будет загружена куда-нибудь?
Не с помощью браузерного инструмента. Книга разархивируется и анализируется внутри страницы, поэтому конфиденциальные данные никогда не покидают ваше устройство, а преобразование по-прежнему работает в автономном режиме, что является доказательством этого утверждения.
Инструменты, упомянутые в этом посте
Еще статьи для чтения
5 минута чтения
От CSV до JSON: от электронной таблицы к структурированным
Преобразование CSV в JSON в браузере — объясняются строки заголовков, разделители, правила кавычек и обработка типов, а также экспорт электронных таблиц, который нарушает работу парсеров.
5 минута чтения
От JSON до CSV: выравнивание вложенных данных без потери
Преобразуйте JSON в CSV с помощью вложенных объектов, сведенных в столбцы, согласованных заголовков и цитирования, безопасного для Excel, — и узнайте, какие фигуры вообще не следует сводить.
5 минута чтения
Таблицы Markdown: генерируйте их вместо подсчета труб
Создавайте таблицы уценки со вкусом GitHub из строк или электронных таблиц — выравнивание, экранирование каналов и случаи, когда таблица является неправильным выбором для вашего README.