Я добавлял строки в существующие книги XLSX, используя java и Apache POI.
Проблема в том, что мне постоянно не хватает памяти по мере роста рассматриваемых книг, и ключ -Xmx помогает только до определенного момента.
Фактическое чтение больших книг не является проблемой, так как я могу использовать для этого API событий SAX, а запись больших объемов новых данных не является проблемой, так как это обрабатывается SXSSF, но то, что я Мне нужен какой-то эффект памяти для добавления строк в уже большие книги.
Было рекомендовано использовать конструктор SXSSFWorkbook(XSSFWorkbook), но, насколько я понимаю, это по-прежнему означает загрузку всей (и без того огромной) книги в память.
Также рекомендуется загружать книгу как файл, а не использовать входной поток для сохранения памяти, однако тогда я предполагаю, что мне придется записывать все в совершенно новый файл.
Итак, есть ли здесь кто-нибудь, кто знает, как с помощью Apache POI добавлять строки в уже существующие (и огромные) книги без нехватки памяти?
*.xlsx
) мы смогли выбрать из ZIP-архива только те XML-документы, которые действительно нужны. Конечно, это звучит проще, так как это будет. См.: stackoverflow.com/questions/35805878/ - person Axel Richter   schedule 15.12.2016