исключение java.lang.outofmemory при чтении файла Excel (xlsx) с использованием POI
Я занимаюсь разработкой веб-приложения, которое считывает данные из файла Excel (xlsx). Я использую POI для чтения листа Excel. Проблема в том, что когда я пытаюсь прочитать файл Excel, сервер выдает следующую ошибку:
Файл Excel, который я пытаюсь прочитать, имеет размер почти 80 МБ. Любое решение этой проблемы?
На самом деле пользователь загружает файл и приложение после сохранения файла на диск и пытается прочитать файл. Фрагмент кода, который я использую для тестирования:
File savedFile = new File(file_path);
FileInputStream fis = null;
try {
fis = new FileInputStream(savedFile);
XSSFWorkbook xWorkbook = new XSSFWorkbook(fis);
XSSFSheet xSheet = xWorkbook.getSheetAt(5);
Iterator rows = xSheet.rowIterator();
while (rows.hasNext()) {
XSSFRow row = (XSSFRow) rows.next();
Iterator cells = row.cellIterator();
List data = new ArrayList();
while (cells.hasNext()) {
XSSFCell cell = (XSSFCell) cells.next();
System.out.println(cell.getStringCellValue());
data.add(cell);
}
}
} catch (IOException e) {
e.printStackTrace();
}