Установить стиль в листе Excel с помощью poi

Я хочу добавить стиль в свой файл Excel. Я хочу установить ширину строки / столбца и цвет строки. Я не понимаю, как я могу добавить это. Ниже мой код, в котором я пишу файл Excel.

         workbook = new HSSFWorkbook();
        //create a new work sheet
        sheet = workbook.createSheet("Test Result");
        CellStyle style = sheet.getWorkbook().createCellStyle();
        style.setWrapText(true);

        testresultdata = new LinkedHashMap<String, Object[]>();
        //add test result excel file column header
        //write the header in the first row
        testresultdata.put("1", new Object[]{"Excel First Row", 
        "Excel Second Row", "Excel 3rd Row", "Excel 4th Row"});  //This line i wrote the excel




       Set<String> keyset = testresultdata.keySet();
        int rownum = 0;
        for (String key : keyset) {
            Row row = sheet.createRow(rownum++);
            Object[] objArr = testresultdata.get(key);

            int cellnum = 0;
            for (Object obj : objArr) {
                Cell cell = row.createCell(cellnum++);

                if (obj instanceof Date)
                    cell.setCellValue((Date) obj);
                else if (obj instanceof Boolean)
                    cell.setCellValue((Boolean) obj);
                else if (obj instanceof String)
                    cell.setCellValue((String) obj);
                else if (obj instanceof Double)
                    cell.setCellValue((Double) obj);
            }
        }

Текущее представление Excel. Я хочу показать его организованным способом.

Установить стиль в листе Excel с помощью poi

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
529
1

Ответы 1

Вам не хватает стиля для ячейки.

cell.setCellStyle(cellStyle);

        int cellnum = 0;
        for (Object obj : objArr) {
            Cell cell = row.createCell(cellnum++);
            cell.setCellStyle(cellStyle);
            if (obj instanceof Date)
                cell.setCellValue((Date) obj);
            else if (obj instanceof Boolean)
                cell.setCellValue((Boolean) obj);
            else if (obj instanceof String)
                cell.setCellValue((String) obj);
            else if (obj instanceof Double)
                cell.setCellValue((Double) obj);
        }

Спасибо за ответ, но не повезло.

Zakaria Shahed 08.05.2018 09:17

Можете ли вы добавить другие стили, например цвет фона, чтобы проверить, работает ли стиль? cellStyle.setFillForegroundColor (новый HSSFColor (новый java.awt.Color (255, 244, 233))); style.setFillPattern (HSSFCellStyle.SOLID_FOREGROUND);

Abdullah Tellioglu 08.05.2018 09:19

cell.setCellStyle (стиль ячеек); здесь cellStyle выдает ошибку. Где мне нужно определить cellStyle?

Zakaria Shahed 08.05.2018 09:21

Другие вопросы по теме