Проблема с размером файла.пока пои читать пишу - PullRequest
2 голосов
/ 21 февраля 2011

Я использую apache poi api для работы с файлами электронных таблиц. Я заметил, что если мы попытаемся отредактировать существующий файл .xls, его размер будет не таким, как если бы этот же файл (те же данные) был записан за один раз.

Ответы [ 2 ]

3 голосов
/ 24 февраля 2011

Это нормально для электронной таблицы Excel, чтобы расти после открытия или редактирования.Когда электронная таблица открывается в Microsoft Excel, формулы автоматически рассчитываются, что увеличивает размер файла.Если электронная таблица открыта с помощью Apache POI, разработчик может вызвать ( FormulaEvaluator ), чтобы обновить все значения.Когда Apache POI читает электронную таблицу, а формулы не проверяются, ответы формул могут быть недействительными.

2 голосов
/ 29 мая 2011

POI всегда будет записывать одну запись на ячейку

Excel, однако, иногда объединяет несколько похожих последовательных ячеек в одну запись.Например, если у вас есть 3 ячейки в строке, которые являются пустыми, но стилизованными, то Excel сгенерирует MulBlankRecord , который содержит все из них.Для нескольких ячеек подряд с простыми числами в Excel используется MulRKRecord

Когда POI считывает файл, он расширяет все записи Mul *.Во время записи отдельные записи ячейки записываются, поэтому файл становится немного больше.Я думаю, что в Bugzilla POI есть запись для улучшения, чтобы заставить POI объединять ячейки в записи Mul, но, похоже, еще никто не вызвался работать над этим ...

...