2010-12-15 4 views
0

J'essaie de lire les données d'un fichier Excel (format xlsx) de taille 100MB. En lisant les données Excel, je fais face à outOfMemoryException. Essayé en augmentant la taille du tas JVM à 1024 Mo mais toujours pas d'utilisation et je ne peux pas augmenter la taille de plus que cela. Également essayé en exécutant la collecte des ordures aussi mais aucune utilisation. Quelqu'un peut-il m'aider à ce sujet pour résoudre mon problème.outOfMemoryException lors de la lecture des données Excel

Merci Pavan Kumar OV S.

+0

quelles options avez-vous passé à la machine virtuelle pour augmenter la Espace de tas? Quel message d'erreur spécifique avez-vous reçu? – hvgotcodes

Répondre

0

Par défaut, une machine virtuelle Java place une limite supérieure de la quantité de mémoire disponible pour le processus en cours afin d'éviter les processus d'emballement avalant les ressources du système et de faire la mouture de la machine à l'arrêt . Lors de la lecture ou de l'écriture de feuilles de calcul volumineuses, la machine virtuelle Java peut nécessiter plus de mémoire que celle qui a été allouée à la machine virtuelle Java par défaut, ce qui se traduit généralement par une erreur java.lang.OutOfMemoryError.

Pour les processus de ligne de commande, vous pouvez allouer davantage de mémoire à la machine virtuelle Java en utilisant les options -Xms et -Xmx, par exemple. d'allouer une allocation initiale de tas de 10 Mo, avec 100 Mo comme vous pouvez la limite supérieure utiliser:

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

Vous pouvez consulter http://www.andykhan.com/jexcelapi/tutorial.html#introduction pour plus de détails

Questions connexes