Excel中sheet名字最大长度的坑
来源:互联网 发布:单片机产生时序信号 编辑:程序博客网 时间:2024/05/22 14:14
今天业务说导出一个多sheet的功能报错了:
java.lang.RuntimeException: 导出数据出现异常:The workbook already contains a sheet named 'MOLU692473423-1-GLE 320 4MATIC (166062 | DA6CB)'
。。。。。。
看错误提示是因为再workbook中出现了同名sheet,因此报错。由于sheet名字是由三个字段值拼接而成,如果数据在不同的sheet里那么这三个值拼接后绝对不相同,本地调试发现在workbook.createSheet(key)时候出的问题,key就是三个字段值拼接而成的字符串,一方面用来对原始数据进行分组以便于放到不同的sheet里,另一方面用这个key来作为sheet名字以明显区分数据。问题原因:
Excel中sheet命名有如下规则:
(1)sheet名称不能多于31个(包含英文、汉字、| 、()等,但是不能包含: 、/、?、*、[]等 ),程序中使用poi工具来生成的时候,传进去大于31个长度的字符串时,会被自动截取,例如上面报错的信息,正常的话生成的sheet名字应该是“
MOLU692473423-1-GLE 320 4MATIC ”。
(2)sheet名字不能为空,如果key = null 或者“”也会报错。
这次出现这个问题实属没有想到,也算是学习了。
阅读全文
0 0
- Excel中sheet名字最大长度的坑
- .NET读取Excel中各Sheet的名字
- Excel中如何引用 「文件名」、「sheet 页」的名字
- Excel导入SQL时,如何动态获得Sheet的名字
- VBA Excel 直接增加任意名字sheet
- excel一个sheet最大行数
- excel sheet中数据的快速复制
- Dataset导出excel的不同sheet中
- Excel中Sheet复制
- 如何获取excel对应的sheet个数和对应的名字
- excel中如何返回某列中最大长度的单元格的字符数
- ABAP中读取EXCEL中不同的SHEET数据
- ABAP中读取EXCEL中不同的SHEET数据
- ABAP中读取EXCEL中不同的SHEET数据
- excel中添加sheet模板
- 将Excel中所有Sheet的数据导入一个DataSet
- VB.Net获取Excel中Sheet的名称
- 将Excel中多个sheet的数据导入到SQLSERVER中
- Java中抽象类和接口的区别
- SqlBulkCopy(批量复制)使用方法
- UITextView自适应高度,同时可以设置最大高度, 类似于QQ微信输入框效果,支持表情的输入
- 《数字技术》连载30:第4章 信息的寄存传输和转换 第3节 代码的转换
- 数据库分布式架构巧设计
- Excel中sheet名字最大长度的坑
- Android 进阶之路:常见设计模式之观察者模式
- redis与MySQL结合
- Golang从入门到精通(十九):Golang并发编程之Channel
- android studio 安装配置svn
- 为什么选择多域名通配符SSL证书?
- 第十五周——项目一—验证算法(7)归并排序
- 读取二进制文件到txt,包括大小端转换
- digdome.sh