内容简介:MyExcel,是一个集导入、导出、加密Excel等多项功能的Java工具包。 导入:提供简便的API,读取Excel内容,并转化为List< Bean >。 导出:可快速导出海量数据的简单列表,可生成高复杂度布局的Excel,复杂布局指的...
MyExcel,是一个集导入、导出、加密Excel等多项功能的 Java 工具包。
- 导入:提供简便的API,读取Excel内容,并转化为List< Bean >。
- 导出:可快速导出海量数据的简单列表,可生成高复杂度布局的Excel,复杂布局指的是包含多种不规则合并单元格、背景色、字体大小、斜体、下拉列表等,可自动划分Excel生成zip压缩包。
本次更新为综合更新,涉及众多新特性以及Bug修复,更新点如下:
- 修复DefaultExcelBuilder、DefaultStreamExcelBuilder固定标题行无法横向移动问题;
- 修复SaxExcelReader读取.xls文件流失败问题;
- 修复DefaultExcelBuilder/DefaultStreamExcelBuilder非连续列复杂表头共存问题;
- 修复空Tr情况下报java.lang.UnsupportedOperationException异常问题;
- 修复读取Bigdecimal时,未除去非字符,如“,”等导致的错误问题;
- 新增CsvBuilder,支持生成.csv文件;
- 新增.csv文件读取模块,使用SaxExcelReader读取;
- SaxExcelReader支持按sheet名称读取;
- 新增DefaultExcelBuilder\DefaultStreamExcelBuilder\Excel模板下拉列表支持;
- 新增DefaultExcelBuilder\DefaultStreamExcelBuilder\Excel模板超链接支持;
- 新增DefaultExcelBuilder\DefaultStreamExcelBuilder自定义样式支持;
- 新增DefaultExcelBuilder\DefaultStreamExcelBuilder金额格式化支持;
- 新增DefaultExcelBuilder、DefaultStreamExcelBuilder简单映射支持;
- 新增DefaultExcelBuilder动态Map导出自定义宽度支持;
- 新增各个Excel构建器closeable支持,异常情况下try-with-resource主动关闭相关资源;
- 优化AttachmentExportUtil导出content-type,明确类型;
- 其他数据结构、内存优化;
- 使用文档完善;
因涉及较多的Bug修复,建议所有使用用户进行升级!!!
2.8.2版本是2.x最后一版,后续将进入3.x版本,在此期间会进行核心代码重构以及性能大提升,也会伴随其他新特性,敬请期待!!!
新特性展示如下:
1. DefaultExcelBuilder\DefaultStreamExcelBuilder非连续多表头
// 导出逻辑
Workbook workbook = DefaultExcelBuilder.of(ArtCrowd.class).fixedTitles().build(dataList);
AttachmentExportUtil.export(workbook, "艺术生信息", response);
// ArtCrowd类导出部分字段
@ExcelColumn(order = 0, title = "扩展信息->姓名")
private String name;
@ExcelColumn(order = 1, title = "年龄")
private Integer age;
@ExcelColumn(order = 2, title = "扩展信息->性别", mapping = "Man:男,Woman:女")
private String gender;
2. DefaultExcelBuilder\DefaultStreamExcelBuilder金额格式化(默认四舍五入)
@ExcelColumn(title = "金额",decimalFormat = "##,##0.00")
private BigDecimal money = new BigDecimal(12345.6454);
3. .csv文件生成
Csv csv = CsvBuilder.of(ArtCrowd.class).build(getDataList());
AttachmentExportUtil.export(csv.getFilePath(), "123.csv", response);
private List<ArtCrowd> getDataList() {
}
csv文件生成目前只支持Bean方式,具体使用方式与DefaultExcelBuilder一致。
4. csv文件读取
// csv文件获取
URL htmlToExcelEampleURL = this.getClass().getResource("/templates/read_example.csv");
Path path = Paths.get(htmlToExcelEampleURL.toURI());
// csv文件读取,支持流方式
List<ArtCrowd> result = SaxExcelReader.of(ArtCrowd.class).beanFilter(bean -> bean.isDance()).rowFilter(row -> row.getRowNum() > 0).read(path.toFile());
5. 自定义样式支持
@ExcelColumn(title = "金额",decimalFormat = "##,##0.00",style = "color:green;")
private BigDecimal money = new BigDecimal(12345.6454);
6. 下拉列表支持(字段类型为List,则默认为下拉列表)
@ExcelColumn(title = "下拉列表")
private List<String> opts;
7. 简单映射
@ExcelColumn(title="性别",mapping="0:男,1:女")
Integer gender;
其他具体详情,请移步文档:https://github.com/liaochong/myexcel/wiki
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- IJPay 0.8 版本发布,兼容低版本 JDK
- fastjson 1.2.55 版本发布,Bug 修复版本
- Apache Ignite 2.9.1 版本发布,小版本更新
- Swoole v4.6.1 版本发布,Bug 修复版本
- Swoole v4.6.2 版本发布,Bug 修复版本
- Swoole v4.6.4 版本发布,Bug 修复版本
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
疯狂Java讲义(第4版)
李刚 / 电子工业出版社 / 2018-1 / 109
《疯狂Java讲义(第4版)》是《疯狂Java讲义》的第4版,第4版保持了前3版系统、全面、讲解浅显、细致的特性,全面新增介绍了Java 9的新特性。 《疯狂Java讲义(第4版)》深入介绍了Java编程的相关方面,《疯狂Java讲义(第4版)》内容覆盖了Java的基本语法结构、Java的面向对象特征、Java集合框架体系、Java泛型、异常处理、Java GUI编程、JDBC数据库编程、J......一起来看看 《疯狂Java讲义(第4版)》 这本书的介绍吧!