2.Response流输出文件名称如何支持中文?

版本1.4.1以及之后,请使用AttachmentExportUtil\FileExportUtil工具类导出,无需关心后缀以及中文问题;其他版本请如下设置Response流:

3.不指定工作簿格式,默认格式是什么?

如不指定workbookType,则文件的默认格式为.xlsx,也建议使用.xlsx格式

目前默认支持的模板引擎有:Freemarker、Beetl、Groovy template engine,使用上述默认ExcelBuilder创建Excel时,模板文件只能放在classpath下,如resources下

5.性能说明

MyExcel在实际生产环境中运用,对于海量数据(千万级别)支持良好,内存稳定占用100~200兆内,相比EasyExcel内存占用甚至更低,请放心使用。

6.如何在html中设置excel的sheet名称

Set Excel sheet name:Add to Table

  1. <!DOCTYPE html>
  2. <head>
  3. <meta charset="UTF-8">
  4. <title>Document</title>
  5. </head>
  6. <body>
  7. <table>
  8. <caption>sheet名称</caption>
  9. <thead>
  10. <tr>
  11. <th></th>
  12. </tr>
  13. </thead>
  14. <tbody>
  15. <tr>
  16. <td></td>
  17. <td></td>
  18. </tr>
  19. </tbody>
  20. </table>
  21. </body>

8.高并发情况下是否会出现安全问题?

在POI较低版本高并发生成Excel时可能会出现如下错误:

 private void createTempDirectory(File directory) throws IOException {
        if (!(directory.exists() || directory.mkdirs()) || !directory.isDirectory()) {
            throw new IOException("Could not create temporary directory '" + directory + "'");
        }
    }

MyExcel采用的POI版本已修复了该问题,请放心使用,修改后对应的源代码如下:

9..xls文件自定义颜色无效问题解决方案

针对.xls文件,POI预定义了56种颜色,如需自定义颜色,需要覆盖56种颜色,目前解决方案暂未确定,因此,目前建议有自定义颜色需求用户使用.xlsx,如只能使用.xls文件,目前只能使用预定义的56种颜色,颜色列表请参照:颜色索引

使用方式:以为例,设置样式时,设置为即可。

Error:(210, 62) java: 对readThen的引用不明确
  com.github.liaochong.myexcel.core.DefaultExcelReader 中的方法 readThen(java.io.InputStream,java.util.function.Consumer<T>) 和 com.github.liaochong.myexcel.core.DefaultExcelReader 中的方法 readThen(java.io.InputStream,java.util.function.Function<T,java.lang.Boolean>) 都匹配

为解决该问题,请在方法执行体中增加大括号"{",如下: