This week's book giveaway is in the Reactive Progamming forum.
We're giving away four copies of Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams and have Adam Davis on-line!
See this thread for details.
Win a copy of Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams this week in the Reactive Progamming forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Junilu Lacar
  • Jeanne Boyarsky
  • Bear Bibeault
Sheriffs:
  • Knute Snortum
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Ron McLeod
  • Stephan van Hulst
  • Tim Moores
  • Tim Holloway
  • Carey Brown
Bartenders:
  • Piet Souris
  • Frits Walraven
  • Ganesh Patekar

large Excel file read

 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,


I am trying to upload a excel file if it as 100000 of rows then a get the java heap space error

how will resolve this

this is my code.


FileInputStream myInput = new FileInputStream(fileName);
try{
if (extention.equalsIgnoreCase("xlsx"))
{
XSSFWorkbook wb = new XSSFWorkbook(myInput);
XSSFSheet sheet = wb.getSheetAt(0);
ExcelServiceImpl.saveExceldataxlxsdata(sheet,httpS ervletRequest);
}
else if (extention.equalsIgnoreCase("xls"))
{
POIFSFileSystem fileSystem = new POIFSFileSystem(myInput);
HSSFWorkbook myWorkBook = new HSSFWorkbook(fileSystem);
HSSFSheet mySheet = myWorkBook.getSheetAt(0);
ExcelServiceImpl.saveExcelsdata(mySheet,httpServle tRequest);
}


please help me.
 
Rancher
Posts: 43011
76
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to JavaRanch.

How much memory have you allocated to the JVM? POI is known to use lots of memory; try upping it substantially.

Also, having separate code for handling XLS and XLSX is unnecessarily complicated. Use the classes in the org.apache.poi.ss package instead which can handle both varieties.

I also question a design that uses Excel files with 100.000 rows - no human being should be subjected to such files, and if the file is not touched by humans, then XLS/XLSX is not the best way to store the data.
 
When you have exhausted all possibilities, remember this: you haven't - Edison. Tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop
https://coderanch.com/wiki/718759/books/Building-World-Backyard-Paul-Wheaton
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!