Мне надо: значение полученного exel файла записать в новый excel файл.
excel:
Проблема: Созданный новый excel не открывается, ругается что формат не тот или файл поврежден.
Вопрос: Что не так с моим кодом? Правильно ли я делаю?
код
@PostMapping("/import")
public void mapReapExcel(@RequestParam("file") MultipartFile reapExcelDataFile) throws IOException {
XSSFWorkbook workbook = new XSSFWorkbook(reapExcelDataFile.getInputStream());
XSSFSheet worksheet = workbook.getSheetAt(0);
// создание самого excel файла в памяти
XSSFWorkbook wb = new XSSFWorkbook();
// создание листа с названием "Просто лист"
XSSFSheet sheet = workbook.createSheet("Просто лист");
Row row = sheet.createRow(0);
row.createCell(0).setCellValue("Дата");
row.createCell(1).setCellValue("ID платежа");
row.createCell(2).setCellValue("Назаначение платежа");
row.createCell(3).setCellValue("Сумма");
// row.createCell(4).setCellValue("Оплата заказа");
FileOutputStream out = new FileOutputStream(new File("C:\\Users\\xxx\\Desktop\\new_list.xlsx"));
for (int i = 1; i < worksheet.getPhysicalNumberOfRows(); i++) {
XSSFRow row2 = worksheet.getRow(i);
row.createCell(0).setCellValue(row2.getCell(0).toString());
row.createCell(1).setCellValue(row2.getCell(1).toString());
row.createCell(2).setCellValue(row2.getCell(2).toString());
row.createCell(3).setCellValue(row2.getCell(3).getNumericCellValue());
// String[] str = row2.getCell(2).getStringCellValue().split("#");
// row.createCell(4).setCellValue(str[1]);
}
out.close();
}
<code>
P.s буду рад любому совету от Вас