2021年8月3日 导出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时,不能设置“\/:*?"<>|”,否则程序会报错