/ / Problémy s pamäťou počas prevodu veľkého množstva súboru XLSX na CSV s POI - java, performance, excel, apache-poi

Problémy s pamäťou počas prevodu veľkého množstva súboru XLSX na CSV s POI - java, performance, excel, apache-poi

Toto je pre mňa veľmi náročná úloha ako jarobiť skoro R & D, aby sa zbavil OutOfMemroyError počas konverzie XLSX na CSV a môj Excel súbor môže mať tri listy a každý hárok s 60000 riadkami. V poslednej dobe som použil XSSF a SAX (Event API), pretože tento prístup spotrebuje oveľa menej pamäte. Aplikácia API udalosti však spúšťa udalosti iba pre veci skutočne uložené v súbore a to môže byť príčinou pre mňa.

Skôr, než k tomuto prístupu API udalosti som použil triedu Workbook na spracovanie súboru XLSX a nakoniec som sa dostal z pamäte počas vytvárania tohto pracovného stolu, ktorý je uvedený nižšie.

Pracovný zošit = WorkbookFactory.create (nový súbor ("myfile.xlsx"));

tak, aký je najlepší spôsob, ako spracovať veľký objem údajov XLSX s apache POI?

odpovede:

1 pre odpoveď č. 1

Tu je príklad pre čítanie veľkého súboru xls pomocou sax analyzátora. Analyzátor Sax vám pomôže vyhnúť sa výnimkám OOM.

Chyba pri čítaní veľkých súborov programu Excel (xlsx) Prostredníctvom Apache POI