Неправильное отображение стилей ячеек apache poi

#java #apache-poi

#Ява #apache-poi

Вопрос:

Во-первых, я создаю стиль, в котором описываю расположение текста

 XSSFFont font = workbook.createFont();  font.setFontHeight((short) (12 * 20));  font.setFontName("Times New Roman");    XSSFCellStyle style = workbook.createCellStyle();  style.setWrapText(true);  style.setAlignment(HorizontalAlignment.CENTER);  style.setVerticalAlignment(VerticalAlignment.CENTER);  style.setFont(font);  

Затем я создаю базовый стиль, который буду применять ко всем ячейкам.

 XSSFCellStyle baseStyle = getBaseStyle(style, workbook); .... public static XSSFCellStyle getBaseStyle(CellStyle style, XSSFWorkbook wb) {  XSSFCellStyle baseStyle = wb.createCellStyle();  baseStyle.cloneStyleFrom(style);  baseStyle.setBorderBottom(BorderStyle.THIN);  baseStyle.setBorderTop(BorderStyle.THIN);  baseStyle.setBorderRight(BorderStyle.THIN);  baseStyle.setBorderLeft(BorderStyle.THIN);    return baseStyle; }  

Проблема в том, что окончательный стиль(базовый стиль) Созданное мной неправильно отображается в Excel введите описание изображения здесь

Желаемый результат введите описание изображения здесь

Я неправильно использую стили? Заранее благодарю вас!

Комментарии:

1. ты getBaseStyle часто звонишь? — если это так, вы создадите много записей стилей, а excel ограничивает максимальное количество стилей и может игнорировать или просто действовать, если в файле xlsx слишком много записей стилей

2. здравствуйте, я вызываю его один раз, затем применяю этот стиль в цикле