Обновленный Excel из apache poi не дает правильных значений - PullRequest
0 голосов
/ 19 июня 2019

Я отправляю вход json в файл Excel и обновляю Excel в определенной строке, а затем читаю обновленный файл Excel, но мы не можем прочитать обновленные значения из файла Excel

У меня естьзаметил, что когда мы открываем Excel и сохраняем вручную, тогда я могу прочитать значения. Если я не сохраняю его вручную, когда нажимаю кнопку закрытия, приходит предупреждение Excel о сохранении, даже если я ничего не меняю

1) Я читаюExcel с формулой и сохранением его в mongodb и созданием нового Excel с динамическими значениями Json, мы можем увидеть ожидаемые значения, но не можем прочитать созданный Excel

2) Я даю Excelс помощью значений json, которые динамически повторяют их и сохраняют формулу с другим именем, мы можем видеть ожидаемые значения, но не можем читать создаваемый Excel

        FileInputStream fis = new FileInputStream(
                new File("input excel here"));

        //System.out.println(jsonobject);
        JSONObject rawdatajson = jsonobject.getJSONObject("RawJson");

        Workbook workbook = WorkbookFactory.create(fis);
        Sheet sheet = (XSSFSheet) workbook.getSheetAt(0);
        Row row1 = sheet.createRow(2);
        for (int i = 0; i < 100; i++) {
            Cell cell1 = row1.createCell(i);
            cell1.setCellValue(rawdatajson.get("line_index_" + i).toString());

        }
        workbook.setForceFormulaRecalculation(true);
        FormulaEvaluator evaluator = workbook.getCreationHelper().createFormulaEvaluator();
        evaluator.evaluateAll();

        FileOutputStream fos = new FileOutputStream(
                ("create excel path here));
        workbook.write(fos);
        fis.close();
        fos.flush();
        fos.close();


        workbook.close();
        System.out.println("Done");
        finaljson = readfinalexcel
                .readcode("created excel path here");

Я получаю 0,0, когда читаю Excelно фактическое значение равно 15, если я сохраню Excel вручную и снова прочитаю Excel, то получу 15

...