https://bz.apache.org/bugzilla/show_bug.cgi?id=62711
Bug ID: 62711
Summary: Calling shiftRows corrupts file in POI 4.0
Product: POI
Version: 4.0.0-FINAL
Hardware: PC
Status: NEW
Severity: normal
Priority: P2
Component: XSSF
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
Hi
This code produces a corrupt XLSX with POI 4.0 (works fine in 3.17):
ByteArrayOutputStream os = new ByteArrayOutputStream();
try (Workbook workbook = new XSSFWorkbook()) {
Sheet worksheet =
workbook.createSheet(WorkbookUtil.createSafeSheetName("Export"));
for (int rowNum = 0; rowNum < 900; rowNum++) {
Row row = worksheet.createRow(rowNum);
int colNum = 0;
for (Object cellValue : Arrays.asList(new Object(),0,0,0,0,0,0,0,0)) {
row.createCell(colNum++);
}
}
worksheet.shiftRows(0, worksheet.getLastRowNum(), 3);
workbook.write(os);
}
If I leave out the shiftRows, everything works fine.
It doesn't matter if I write values into the cells or not, the result is the
same.
running Java 8, POI 4.0, Windows 10, Excel 2016
Error when opening in Excel:
Removed Records: Cell information from /xl/worksheets/sheet1.xml part
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]