我想在excel-cell中写一个布尔值,但不是将cellStyle设置为“logic”,而是将cellStyle改为“number”。
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之间没有短暂的工作。
答案 0 :(得分:2)
例如,使用适当的setCellValue
重载版本时,单元格类型将自动分配,例如
cell.setCellValue(true);
System.out.println(cell.getCellType());
打印BOOLEAN
已在org.apache.poi:poi:4.1.1
上选中
答案 1 :(得分:2)
您可以使用以下内容:
Row row = sheet.createRow(lineNumber);
Cell cell = row.createCell(1, CellType.BOOLEAN);
这将创建一个样式为持久化布尔值的单元格。
答案 2 :(得分:0)
将以下代码用于布尔值
private void writeToDocument(XSSFWorkbook workbook) {
Sheet sheet = workbook.createSheet("testSheet");
Row row = sheet.createRow(0);
Cell cell = row.createCell(0);
cell.setCellType(HSSFCell.CELL_TYPE_BOOLEAN);
cell.setCellValue((Boolean) true);
}
答案 3 :(得分:0)
这是一种自定义日期的方法,可能您可以使用布尔值来尝试
final XSSFCellStyle date = sheet.getWorkbook().createCellStyle();
date.setDataFormat(
sheet.getWorkbook()
.getCreationHelper()
.createDataFormat()
.getFormat(pattern)
);
cell = row.createCell(index);
cell.setCellStyle(date);