注意事项:同样写入到Excel的时间格式为------> yyyy/m/d h:mm:ss ,且单元格宽度不够的的情况的下:
显示方式1:
显示方式1显示方式2:
显示方式2原因分析:“显示方式1”的写入格式是String类型,cell.setCellValue(date),其中date为String类型;
“显示方式2”的写入格式为Date类型,cell.setCellValue(date),其中date为Date类型;
解决办法:
1.如果想要时间格式不被压缩成成“###...”,可以将我们获取到的时间转换成String类型,
SimpleDateFormat formatter= new SimpleDateFormat("yyyy/M/d H:mm:ss");
Date date= new Date(System.currentTimeMillis());
String time= formatter.format(date);
2.如果想要单元格格式为时间,且在单元格宽度不够的情况下显示成“###...” ,
CreationHelper createHelper=workbook.getCreationHelper();
CellStyle style= workbook.createCellStyle();
DataFormat format= workbook.createDataFormat();
style.setDataFormat(createHelper.createDataFormat().getFormat("yyyy/M/d H:mm:ss"));
cell.setCellValue(new Date());
cell.setCellStyle(style);
即可!
备注:将时间字符串timeString转换成Date格式方法:
Date date=null;
SimpleDateFormat formatter=new SimpleDateFormat("yyyy/M/d H:mm:ss");
date=formatter.parse(timeString);
以上。
网友评论