outOfMemoryException при чтении данных Excel - PullRequest
0 голосов
/ 15 декабря 2010

Я пытаюсь прочитать данные из файла excel (формат xlsx) размером 100 МБ. При чтении данных Excel я сталкиваюсь с outOfMemoryException. Попытка увеличить размер кучи JVM до 1024 МБ, но все равно бесполезна, и я не могу увеличить размер больше этого. Также попытался запустить сборку мусора тоже, но бесполезно. Может ли кто-нибудь помочь мне решить эту проблему.

Спасибо Паван Кумар О В С.

1 Ответ

0 голосов
/ 02 марта 2011

По умолчанию JVM устанавливает верхний предел для объема памяти, доступной текущему процессу, чтобы не допустить, чтобы побочные процессы сожрали системные ресурсы и заставили машину остановиться. При чтении или написании больших электронных таблиц JVM может потребоваться больше памяти, чем было выделено для JVM по умолчанию - это обычно проявляется как java.lang.OutOfMemoryError.

Для процессов командной строки вы можете выделить больше памяти для JVM, используя опции -Xms и -Xmx, например. чтобы выделить начальное выделение кучи в 10 МБ, с верхней границей 100 МБ, которую вы можете использовать:

java -Xms10m -Xmx100m -classpath jxl.jar spreadsheet.xls

Для более подробной информации см. http://www.andykhan.com/jexcelapi/tutorial.html#introduction

...