Проблема с вашим кодом в том, что вы пытаетесь прочитать пустой файл, который вы только что создали. Но вы должны были прочитать multipart-file
, чтобы создать рабочую книгу.
FileInputStream fis = new FileInputStream(fileLocation); // fis created with new file location
Workbook workbook = WorkbookFactory.create(fis); //creating a workbook with an empty file
Если вы пытаетесь читать из рабочей книги, вы можете напрямую использовать объект MultipartFile
и покончить с ним. Нет необходимости создавать новый File
.
Сделай что-нибудь подобное.
Workbook workbook = WorkbookFactory.create(file.getInputStream());
, а затем продолжайте работать с файлом. Если вы хотите сохранить файл где-нибудь, вы можете сделать это, как,
try (FileOutputStream outputStream = new FileOutputStream("/path/to/your/file/hello.xlsx")) {
workbook.write(outputStream);
}