poi3.8 xlsx 设置setDataFormat后需要双击单元格才会生效,如果使用Date默认会有日期,但是不需要日期,公式栏显示的是hh:mm:ss单元格显示的是hh:mm,注意:单元格不显示秒格式为hh:mm,公式栏显示秒格式为hh:mm:ss,怎么解决
时间: 2024-02-29 15:52:28 浏览: 62
Java使用poi读取Excel表中的日期单元格
如果想要在单元格中显示时分,而不显示秒,同时希望公式栏中也只显示时分,可以使用`SimpleDateFormat`类将日期格式化为时分的形式,然后将格式化后的字符串写入单元格中。同时,还需要设置单元格的数据格式为`h:mm`,这样单元格中只会显示时分,而公式栏中也会只显示时分格式。
示例代码如下:
```java
DataFormat dataFormat = workbook.createDataFormat();
CellStyle cellStyle = workbook.createCellStyle();
cellStyle.setDataFormat(dataFormat.getFormat("h:mm"));
// 将日期格式化为时分的形式
SimpleDateFormat sdf = new SimpleDateFormat("HH:mm");
Date date = new Date();
String timeStr = sdf.format(date);
// 在单元格中写入格式化后的字符串
Cell cell = row.createCell(0);
cell.setCellValue(timeStr);
cell.setCellStyle(cellStyle);
```
这样在单元格中就会以时分的形式显示,公式栏中也会只显示时分格式,不显示秒。需要注意的是,设置单元格数据格式时,字符串中的`h`表示小时,`m`表示分钟,大小写有区分。
阅读全文