Создание Excel с Java, проблема с номером строки в приложении Mac номеров - PullRequest
0 голосов
/ 28 июня 2019

Ну, я знаю, что это странная проблема, я даже не мог найти правильное название для вопроса:

Я пытаюсь создать файл Excel и загрузить его - все работает отлично, за исключением одного момента, сначалаэто мой код,

List<EmployeeDto> employeeList = getEmployeeList(employeeId);
        Workbook workbook = new XSSFWorkbook();

        Sheet sheet = workbook.createSheet("Employee List");
        sheet.setAutoFilter(new CellRangeAddress(0, 0, 0, 2));
        sheet.createFreezePane(0, 1);
        sheet.setColumnWidth(0, 10000);
        sheet.setColumnWidth(1, 30000);
        sheet.setColumnWidth(2, 10000);
        Row headerRow = sheet.createRow(0);

        CellStyle headerCellStyle = getHeaderCellStyle(workbook);

        for (int i = 0; i < employeeExcelHeaders.size(); i++) {
            Cell cell = headerRow.createCell(i);
            cell.setCellValue(officeListExcelHeaders.get(i));
            cell.setCellStyle(headerCellStyle);
        }

        int rowNumber = 1;
        for (EmployeeDto employeeDto : employeeDtoList) {
            Row row = sheet.createRow(rowNumber++);
            row.createCell(0).setCellValue(employeeDto.getLabel());
            row.createCell(1).setCellValue(employeeDto.getPostalAddress());
            row.createCell(2).setCellValue(employeeDto.getCityName());
        }

        try {
            response.setCharacterEncoding("UTF-8");
            response.setHeader("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
            response.setHeader("Content-disposition", "attachment; filename=Employee List.xlsx");
            workbook.write(response.getOutputStream());
            response.flushBuffer();
        } catch (Exception ex) {
            LOG.error("Error generating excel file for Employee List: " + ex.getMessage(), ex);
            throw new IllegalStateException("Error generating excel file for Employee List: ", ex);
        }

, когда я использую приложение mac numbers , файл поставляется с дополнительными строками и столбцами.(он всегда идет с 10 строками и 2 дополнительными столбцами) enter image description here

Эта проблема не возникает для открытого офиса, но mac numbers имеет эту проблему.

Я играл по линиям:

sheet.setAutoFilter(new CellRangeAddress(0, 0, 0, 2));
sheet.createFreezePane(0, 1);

Но ничего не изменилось.

У вас есть идеи, как мне это решить?Это что-то, что я могу исправить с помощью кодирования, или это просто особенность или ошибка приложения Mac Number?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...