«

2021年8月3日 导出Excel报错排查

Mahalalel 发布于 阅读:3519 Excel操作


1、问题出现

项目需求,要求导出Excel带上时间,所以我就用常用的日期时间格式:yyyy-MM-dd HH:mm:ss;
但是测试过程中出现以下异常

Exception occurred during processing request: Invalid char (:) found at index (16) in sheet name '报名表2021-08-02 15:00:34' 
java.lang.IllegalArgumentException: Invalid char (:) found at index (16) in sheet name '报名表2021-08-02 15:00:34'

2、问题分析

出现以上问题,是因为在导出Excel的时候,Excel的名字中带了“:”;
大家可以看到我取的Excel名称“报名表2021-08-02 15:00:34”,这样的Excel名称就会有问题
另外在桌面新建Excel时,名称不允许包含以下字符:

\/:*?"<>|

3、解决方法

修改java导出日期格式,使用“yyyy-MM-dd HH_mm_ss”

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH_mm_ss");

4、发散

通过图片我们可以知道导出Excel时,不能设置“\/:*?"<>|”,否则程序会报错

Excel导出 Excel名称