我想在excel单元格中写入一个布尔值,但不是将cellStyle设置为“逻辑”,而是将cellStyle改为“数字”。

private void writeToDocument(XSSFWorkbook workbook) {
    Sheet sheet = workbook.createSheet("testSheet");
    Row row = sheet.createRow(0);
    Cell cell = row.createCell(0);
    cell.setCellValue(true);
}

我已经试过了
CellStyle cellStyle = workbook.createCellStyle();
cellStyle.setDataFormat([short s]);
cell.setCellStyle(cellStyle);

但是在0到49之间没有short可以完成这项工作。

最佳答案

当使用适当的setCellValue重载版本时,将自动分配单元格类型,例如

cell.setCellValue(true);
System.out.println(cell.getCellType());

打印BOOLEAN
已检查org.apache.poi:poi:4.1.1

08-24 13:29