Я использую плагин grails-excel-export для экспорта данных в Excel (в формате xlsx), но у меня возникают проблемы при открытии файла в Microsoft Office (без проблем с OpenOffice) .
Когда я открываю его, я получаю сообщение "Мы обнаружили проблему с некоторым содержимым в" exportedFile.xlsx ". Хотите, чтобы мы попытались восстановить столько, сколько мы можем? Если вы доверяете источнику этой книги, нажмите Да ", так же, как эта:
Я уже выяснил, что проблема возникает только при применении любого стиля ячеек к книге, в моем случае я должен установить жирный шрифт для первой строки.
Это код:
def exportToExcel(results, headers, properties, ByteArrayOutputStream outputStream) {
WebXlsxExporter webXlsxExporter = new WebXlsxExporter()
webXlsxExporter.setWorksheetName("Sheet")
webXlsxExporter.with {
fillHeader(headers)
add(results, properties)
save(outputStream)
}
def wb = webXlsxExporter.getWorkbook()
def row = webXlsxExporter.getSheet().getRow(0)
makeFirstRowBold(wb, row)
wb.write(outputStream)
}
def makeFirstRowBold(Workbook wb, Row row) {
CellStyle style = wb.createCellStyle()
Font font = wb.createFont()
font.setBold(true) //Already tried with font.setBoldweight(Font.BOLDWEIGHT_BOLD)
style.setFont(font)
for (int i = 0; i < row.getLastCellNum(); i++) {
row.getCell(i).setCellStyle(style)
}
}